В меморизз...
более подробный вывод nslookup'а:
Nslookup: set d2
This topic has not yet been rated - Rate this topic
Turns exhaustive debugging mode on or off. All fields of every packet are printed.
Syntax
set [no]d2
Top of page
Parameters
nod2 : Turns off exhaustive debugging mode. The default syntax is nod2.
d2 : Turns on exhaustive debugging mode.
{ help | ? } : Displays a short summary of nslookup subcommands.
например, так:
nslookup
╤хЁтхЁ яю єьюыўрэш■: UnKnown
Address: 192.168.41.20
> set d2
> ya.ru
╤хЁтхЁ: UnKnown
Address: 192.168.41.20
------------
SendRequest(), len 37
HEADER:
opcode = QUERY, id = 2, rcode = NOERROR
header flags: query, want recursion
questions = 1, answers = 0, authority records = 0, additional = 0
QUESTIONS:
ya.ru.LANITNW.local, type = A, class = IN
------------
------------
Got answer (103 bytes):
HEADER:
opcode = QUERY, id = 2, rcode = NXDOMAIN
header flags: response, auth. answer, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
ya.ru.LANITNW.local, type = A, class = IN
AUTHORITY RECORDS:
-> lanitnw.local
type = SOA, class = IN, dlen = 41
ttl = 3600 (1 hour)
primary name server = alpha.lanitnw.local
responsible mail addr = hostmaster.lanitnw.local
serial = 9243
refresh = 900 (15 mins)
retry = 600 (10 mins)
expire = 86400 (1 day)
default TTL = 3600 (1 hour)
------------
------------
SendRequest(), len 37
HEADER:
opcode = QUERY, id = 3, rcode = NOERROR
header flags: query, want recursion
questions = 1, answers = 0, authority records = 0, additional = 0
QUESTIONS:
ya.ru.LANITNW.local, type = AAAA, class = IN
------------
------------
Got answer (103 bytes):
HEADER:
opcode = QUERY, id = 3, rcode = NXDOMAIN
header flags: response, auth. answer, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
ya.ru.LANITNW.local, type = AAAA, class = IN
AUTHORITY RECORDS:
-> lanitnw.local
type = SOA, class = IN, dlen = 41
ttl = 3600 (1 hour)
primary name server = alpha.lanitnw.local
responsible mail addr = hostmaster.lanitnw.local
serial = 9243
refresh = 900 (15 mins)
retry = 600 (10 mins)
expire = 86400 (1 day)
default TTL = 3600 (1 hour)
------------
------------
SendRequest(), len 23
HEADER:
opcode = QUERY, id = 4, rcode = NOERROR
header flags: query, want recursion
questions = 1, answers = 0, authority records = 0, additional = 0
QUESTIONS:
ya.ru, type = A, class = IN
------------
------------
Got answer (151 bytes):
HEADER:
opcode = QUERY, id = 4, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 8, authority records = 0, additional = 0
QUESTIONS:
ya.ru, type = A, class = IN
ANSWERS:
-> ya.ru
type = A, class = IN, dlen = 4
internet address = 213.180.193.3
ttl = 6188 (1 hour 43 mins 8 secs)
-> ya.ru
type = A, class = IN, dlen = 4
internet address = 213.180.204.3
ttl = 6188 (1 hour 43 mins 8 secs)
-> ya.ru
type = A, class = IN, dlen = 4
internet address = 77.88.21.3
ttl = 6188 (1 hour 43 mins 8 secs)
-> ya.ru
type = A, class = IN, dlen = 4
internet address = 87.250.250.3
ttl = 6188 (1 hour 43 mins 8 secs)
-> ya.ru
type = A, class = IN, dlen = 4
internet address = 87.250.250.203
ttl = 6188 (1 hour 43 mins 8 secs)
-> ya.ru
type = A, class = IN, dlen = 4
internet address = 87.250.251.3
ttl = 6188 (1 hour 43 mins 8 secs)
-> ya.ru
type = A, class = IN, dlen = 4
internet address = 93.158.134.3
ttl = 6188 (1 hour 43 mins 8 secs)
-> ya.ru
type = A, class = IN, dlen = 4
internet address = 93.158.134.203
ttl = 6188 (1 hour 43 mins 8 secs)
------------
Не заслуживающий доверия ответ:
------------
SendRequest(), len 23
HEADER:
opcode = QUERY, id = 5, rcode = NOERROR
header flags: query, want recursion
questions = 1, answers = 0, authority records = 0, additional = 0
QUESTIONS:
ya.ru, type = AAAA, class = IN
------------
------------
Got answer (79 bytes):
HEADER:
opcode = QUERY, id = 5, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
ya.ru, type = AAAA, class = IN
AUTHORITY RECORDS:
-> ya.ru
type = SOA, class = IN, dlen = 44
ttl = 900 (15 mins)
primary name server = ns1.yandex.ru
responsible mail addr = sysadmin.yandex.ru
serial = 2012121400
refresh = 10800 (3 hours)
retry = 900 (15 mins)
expire = 2592000 (30 days)
default TTL = 900 (15 mins)
------------
╚ь : ya.ru
Addresses: 213.180.193.3
213.180.204.3
77.88.21.3
87.250.250.3
87.250.250.203
87.250.251.3
93.158.134.3
93.158.134.203
понедельник, 24 декабря 2012 г.
четверг, 20 декабря 2012 г.
IBM IMM памятка по доступу
В мемориззз...
на примере сервера x3650M4 - интерфейсы IMM - на первом гигабитном и выделенный отдельный интерфейс (GE1 - IMM1 + IMM2).
Для доступа в BIOS - F1 при старте системы (там в настройках IMM можно посмотреть выданный по DHCP адрес).
Из описалова:
Open a web browser and in the Address or URL field, type the IP address or host name of the IMM to which you want to connect.
Note: If you are logging on to the IMM for the first time after installation, the IMM defaults to DHCP. If a DHCP host is not available, the IMM assigns a static IP address of 192.168.70.125.
On the Login page, type the user name and password. If you are using the IMM for the first time, obtain the user name and password from your system administrator. All login attempts are documented in the event log.
Note: The IMM is set initially with a user name of USERID and password of PASSW0RD (with a zero, not the letter O). You have read/write access. You must change this default password the first time you log on.
On the Welcome page, type a timeout value (in minutes) in the field that is provided. You are logged off the web interface if your browser is inactive for the number of minutes that you entered for the timeout value.
Click Continue to start the session. The System Status page provides a quick view of the server status.
например,
http://192.168.41.169/designs/imm/index-console.php#80
логин по умолчанию - USERID
пароль по умолчанию - PASSW0RD
(в пароле вместо буквы "О" - цифра "0" - ноль).
Также есть доступ по SSH:
login as: USERID
Using keyboard-interactive authentication.
Password:
MYIMM> ?
? -- Display command list
accseccfg -- Account security configuration
alertcfg -- Display or change the IMM global remote alert parameters.
alertentries -- This command manages the recipients of alerts.
backup -- Creates a backup file containing the current system settings.
batch -- Executes CLI commands in a file.
clearcfg -- Resets the IMM to its default settings
clearlog -- Clear IMM event log
clock -- Display/set date, time, GMT offset, and dst setting
console -- Exit CLI, attach to serial console
dhcpinfo -- View DHCP server assigned settings
dns -- Displays the current DNS configuration of the IMM.
ethtousb -- Display and configure ethernet to ethernet over usb port mapping
exit -- Exit CLI (log off)
fans -- Displays the fan speed for all system fans
ffdc -- First Failure Data Capture (service data)
help -- Display command list
history -- Display history of last 8 commands
identify -- Control system locator LED
ifconfig -- Ethernet and PPP configuration
info -- Display and configure the information associated with the IMM
keycfg -- Display, add or delete activation keys
ldap -- LDAP configuration
led -- Display LED states.
ntp -- Displays and configures the Network Time Protocol
passwordcfg -- Password configuration
portcfg -- Serial port configuration.
ports -- Display and configure port numbers
power -- Control server power
pxeboot -- Enable or disable pxe next boot status
readlog -- Displays the IMM event log, five entries at a time
reset -- Reset server
resetsp -- Reset IMM
restore -- Restores the system settings using the input backup file.
restoredefaults -- Reset all IMM settings to factory defaults
set -- Set CLI environment variables and UEFI settings
show -- Display CLI environment variables and UEFI settings
smtp -- Display or set smtp server
snmp -- Enable or disable the SNMP agent
snmpalerts -- This command manages the recipients of snmp alerts
srcfg -- Serial redirection configuration
sshcfg -- Display and configures SSH parameters
ssl -- SSL configuration
sslcfg -- Displays and configures the status of the SSL Server and SSL Client
syshealth -- System Health
telnetcfg -- Display and configures Telnet parameters
temps -- Display system temperatures
thermal -- Display and configures the thermal mode policy of the host system.
timeouts -- Server timeouts configuration
usbeth -- Enable or disable the inband (Ethernet over USB) interface
users -- User profile configuration
volts -- Displays all the voltages and voltage thresholds
vpd -- Display VPD
Без дополнительной лицензии нет доступа к графической KVM консоли (+ аппаратный ключ).
на примере сервера x3650M4 - интерфейсы IMM - на первом гигабитном и выделенный отдельный интерфейс (GE1 - IMM1 + IMM2).
Для доступа в BIOS - F1 при старте системы (там в настройках IMM можно посмотреть выданный по DHCP адрес).
Из описалова:
Open a web browser and in the Address or URL field, type the IP address or host name of the IMM to which you want to connect.
Note: If you are logging on to the IMM for the first time after installation, the IMM defaults to DHCP. If a DHCP host is not available, the IMM assigns a static IP address of 192.168.70.125.
On the Login page, type the user name and password. If you are using the IMM for the first time, obtain the user name and password from your system administrator. All login attempts are documented in the event log.
Note: The IMM is set initially with a user name of USERID and password of PASSW0RD (with a zero, not the letter O). You have read/write access. You must change this default password the first time you log on.
On the Welcome page, type a timeout value (in minutes) in the field that is provided. You are logged off the web interface if your browser is inactive for the number of minutes that you entered for the timeout value.
Click Continue to start the session. The System Status page provides a quick view of the server status.
например,
http://192.168.41.169/designs/imm/index-console.php#80
логин по умолчанию - USERID
пароль по умолчанию - PASSW0RD
(в пароле вместо буквы "О" - цифра "0" - ноль).
Также есть доступ по SSH:
login as: USERID
Using keyboard-interactive authentication.
Password:
MYIMM> ?
? -- Display command list
accseccfg -- Account security configuration
alertcfg -- Display or change the IMM global remote alert parameters.
alertentries -- This command manages the recipients of alerts.
backup -- Creates a backup file containing the current system settings.
batch -- Executes CLI commands in a file.
clearcfg -- Resets the IMM to its default settings
clearlog -- Clear IMM event log
clock -- Display/set date, time, GMT offset, and dst setting
console -- Exit CLI, attach to serial console
dhcpinfo -- View DHCP server assigned settings
dns -- Displays the current DNS configuration of the IMM.
ethtousb -- Display and configure ethernet to ethernet over usb port mapping
exit -- Exit CLI (log off)
fans -- Displays the fan speed for all system fans
ffdc -- First Failure Data Capture (service data)
help -- Display command list
history -- Display history of last 8 commands
identify -- Control system locator LED
ifconfig -- Ethernet and PPP configuration
info -- Display and configure the information associated with the IMM
keycfg -- Display, add or delete activation keys
ldap -- LDAP configuration
led -- Display LED states.
ntp -- Displays and configures the Network Time Protocol
passwordcfg -- Password configuration
portcfg -- Serial port configuration.
ports -- Display and configure port numbers
power -- Control server power
pxeboot -- Enable or disable pxe next boot status
readlog -- Displays the IMM event log, five entries at a time
reset -- Reset server
resetsp -- Reset IMM
restore -- Restores the system settings using the input backup file.
restoredefaults -- Reset all IMM settings to factory defaults
set -- Set CLI environment variables and UEFI settings
show -- Display CLI environment variables and UEFI settings
smtp -- Display or set smtp server
snmp -- Enable or disable the SNMP agent
snmpalerts -- This command manages the recipients of snmp alerts
srcfg -- Serial redirection configuration
sshcfg -- Display and configures SSH parameters
ssl -- SSL configuration
sslcfg -- Displays and configures the status of the SSL Server and SSL Client
syshealth -- System Health
telnetcfg -- Display and configures Telnet parameters
temps -- Display system temperatures
thermal -- Display and configures the thermal mode policy of the host system.
timeouts -- Server timeouts configuration
usbeth -- Enable or disable the inband (Ethernet over USB) interface
users -- User profile configuration
volts -- Displays all the voltages and voltage thresholds
vpd -- Display VPD
Без дополнительной лицензии нет доступа к графической KVM консоли (+ аппаратный ключ).
понедельник, 17 декабря 2012 г.
Network Discovery (LLDP, OADP) на коммутационных модулях ALAXALA в Hitachi Blade CB2000
После пары часов попыток "подружить" discovery в L2 между модулем
обозначающемся в инвентори как:
Type : 1G LANSW
Part/Model Number : GV-BE2LSW1X1-Y
(это свич-модуль ALAXALA)
и Huawei, в частности, с использованием LLDP, решил таки покурить маны и нашел вот это:
...
(2) About compatibility with LLDPs uniquely supported by other vendors
The Link Layer Discovery Protocol (LLDP) supported by the Switch is not compatible with
LLDPs uniquely supported by other vendors#.
#
Cisco Systems: CDP (Cisco Discovery Protocol)
Extreme Networks: EDP (Extreme Discovery Protocol)
Foundry Networks: FDP (Foundry Discovery Protocol)
(3) About compatibility with the IEEE 802.1AB standard
The LLDP used by the Switch is based on IEEE 802.1AB Draft 6, but includes unique extensions.
It is therefore not compatible with the IEEE 802.1AB standard.
...
выделено жирным и подчеркнуто мной, кстати, своего "товарища" он увидел.
Также в мемориз: настройка и глобально и на портах:
(config)# lldp run
!(config)# do sh lldp
Status: Enabled Chassis ID: Type=MAC Info=0000.**
Interval Time: 30 Hold Count: 4 TTL: 120
Port Counts=0
!(config)# int range gi 0/1-4
!(config-if-range)# lldp ena
!(config-if-range)# exit
!(config)# do sh lldp
Status: Enabled Chassis ID: Type=MAC Info=0000.**
Interval Time: 30 Hold Count: 4 TTL: 120
Port Counts=4
0/1 Link: Down Neighbor Counts: 0
0/2 Link: Up Neighbor Counts: 0
0/3 Link: Down Neighbor Counts: 0
0/4 Link: Up Neighbor Counts: 0
когда появляется сосед запись примерно такая:
System Description: ALAXALA AX3640S GV-BE2LSW1N1 [GV-BE2LSW1N1] Switching software Ver. 10.7.F [OS-L3A]
Total Neighbor Counts=1
В OADP можно включить поддержку CDP, однако эффекта на линках с Cisco тоже замечено не было.
oadp run
oadp cdp-listener
interface range gigabitethernet 0/1-4
oadp enable
В общем, не торт...(((
обозначающемся в инвентори как:
Type : 1G LANSW
Part/Model Number : GV-BE2LSW1X1-Y
(это свич-модуль ALAXALA)
и Huawei, в частности, с использованием LLDP, решил таки покурить маны и нашел вот это:
...
(2) About compatibility with LLDPs uniquely supported by other vendors
The Link Layer Discovery Protocol (LLDP) supported by the Switch is not compatible with
LLDPs uniquely supported by other vendors#.
#
Cisco Systems: CDP (Cisco Discovery Protocol)
Extreme Networks: EDP (Extreme Discovery Protocol)
Foundry Networks: FDP (Foundry Discovery Protocol)
(3) About compatibility with the IEEE 802.1AB standard
The LLDP used by the Switch is based on IEEE 802.1AB Draft 6, but includes unique extensions.
It is therefore not compatible with the IEEE 802.1AB standard.
...
выделено жирным и подчеркнуто мной, кстати, своего "товарища" он увидел.
Также в мемориз: настройка и глобально и на портах:
(config)# lldp run
!(config)# do sh lldp
Status: Enabled Chassis ID: Type=MAC Info=0000.**
Interval Time: 30 Hold Count: 4 TTL: 120
Port Counts=0
!(config)# int range gi 0/1-4
!(config-if-range)# lldp ena
!(config-if-range)# exit
!(config)# do sh lldp
Status: Enabled Chassis ID: Type=MAC Info=0000.**
Interval Time: 30 Hold Count: 4 TTL: 120
Port Counts=4
0/1 Link: Down Neighbor Counts: 0
0/2 Link: Up Neighbor Counts: 0
0/3 Link: Down Neighbor Counts: 0
0/4 Link: Up Neighbor Counts: 0
когда появляется сосед запись примерно такая:
System Description: ALAXALA AX3640S GV-BE2LSW1N1 [GV-BE2LSW1N1] Switching software Ver. 10.7.F [OS-L3A]
Total Neighbor Counts=1
В OADP можно включить поддержку CDP, однако эффекта на линках с Cisco тоже замечено не было.
oadp run
oadp cdp-listener
interface range gigabitethernet 0/1-4
oadp enable
В общем, не торт...(((
четверг, 13 декабря 2012 г.
MS Windows Server 2008R2 MPIO
В мемориз...
после подключения полки Hitachi HUS110 по всем 8ми путям в разделе Управление Дисками будут 8 одинаковых неразбитых диска, чтобы они стали полноценным одним, нужно настроить многопутевой ввод/вывод (есть встроенный в систему или с диска от вендора).
Штатный виндовый:
Устанавливаем компонент "Многопутевой ввод-вывод"
Администрирование - MPIO
Обнаружение многопутевых устройств
HITACHI DF600F Добавить
Перезагрузка
После перезагрузки в Хранилище / Управление дисками - обычным образом добавить Диск.
после подключения полки Hitachi HUS110 по всем 8ми путям в разделе Управление Дисками будут 8 одинаковых неразбитых диска, чтобы они стали полноценным одним, нужно настроить многопутевой ввод/вывод (есть встроенный в систему или с диска от вендора).
Штатный виндовый:
Устанавливаем компонент "Многопутевой ввод-вывод"
Администрирование - MPIO
Обнаружение многопутевых устройств
HITACHI DF600F Добавить
Перезагрузка
После перезагрузки в Хранилище / Управление дисками - обычным образом добавить Диск.
среда, 21 ноября 2012 г.
Skype 6.x сочетания клавиш для отправки сообщений.
Пичалька... "Умные" разрабы выкатили обновление Skype, где убрана возможность переназначить дефолтный шоткат для отправки сообщений в чате. Так что привычная многим комбинация Ctrl+Enter переводит строку, а просто Enter - отправляет сообщение. Перевернули все наоборот.
По этому поводу уже достаточно криков на форуме: http://community.skype.com/t5/Windows/send-msgs-via-Ctrl-Enter-in-new-Skype-v-6/td-p/1150298/page/2
Там же есть и некое костыльное решение - использование AutoHotkey:
По этому поводу уже достаточно криков на форуме: http://community.skype.com/t5/Windows/send-msgs-via-Ctrl-Enter-in-new-Skype-v-6/td-p/1150298/page/2
Там же есть и некое костыльное решение - использование AutoHotkey:
...
Fortunately, I’m an AutoHotkey user. The solution is ready in 10 minutes:
#IfWinActive, ^Skype ahk_class ^tSkMainForm$
*^Enter::Send, {Enter}
*Enter::Send, ^{Enter}
#IfWinActive
...
Fortunately, I’m an AutoHotkey user. The solution is ready in 10 minutes:
#IfWinActive, ^Skype ahk_class ^tSkMainForm$
*^Enter::Send, {Enter}
*Enter::Send, ^{Enter}
#IfWinActive
...
пятница, 2 ноября 2012 г.
Piped Serial port: Доступ к COM порту в VBox для Windows и использование socat в Linux.
В меморизз:
http://www.reactos.org/wiki/VirtualBox#Redirect_to_virtual_serial_port_.28named_pipes.2C_Windows_host.2C_com0com_.29
http://technostuff.blogspot.ru/2008/10/piped-serial-port-on-virtualbox.html
Доступ к COM порту в VBox для Windows и использование socat в Linux.
Для Windows:
VBox: enable serial port / COM1 / port mode=host pipe / create pipe / file path=\\.\pipe\asa-pipe
Putty:
serial line=\\.\pipe\asa-pipe
speed=9600
---
Linux:
enable serial port / COM1 / port mode=host pipe / create pipe / file path=/tmp/asa-pipe
socat UNIX-CONNECT:/tmp/asa-pipe TCP-LISTEN:8042
telnet localhost:8042
http://www.reactos.org/wiki/VirtualBox#Redirect_to_virtual_serial_port_.28named_pipes.2C_Windows_host.2C_com0com_.29
http://technostuff.blogspot.ru/2008/10/piped-serial-port-on-virtualbox.html
Доступ к COM порту в VBox для Windows и использование socat в Linux.
Для Windows:
VBox: enable serial port / COM1 / port mode=host pipe / create pipe / file path=\\.\pipe\asa-pipe
Putty:
serial line=\\.\pipe\asa-pipe
speed=9600
---
Linux:
enable serial port / COM1 / port mode=host pipe / create pipe / file path=/tmp/asa-pipe
socat UNIX-CONNECT:/tmp/asa-pipe TCP-LISTEN:8042
telnet localhost:8042
пятница, 26 октября 2012 г.
Windows 7 RDP shutdown
Выключение Windows 7 из сессии RDP.
Раньше достаточно было ввести в cmd: shutdown /s /f /t 0
Теперь придется добавлять причину выключения:
shutdown /s /f /t 005 /d P:0:0 /c "Plan"
Раньше достаточно было ввести в cmd: shutdown /s /f /t 0
Теперь придется добавлять причину выключения:
shutdown /s /f /t 005 /d P:0:0 /c "Plan"
Параметры QEMU для запуска в GNS3 Cisco ASA v8.4
Взято, в основном, отсюда: http://www.xerunetworks.com/2012/02/cisco-asa-84-on-gns3/
После того, как из бинарника ASA вытащены ядро (vmlinuz) и корневая файловая система (initrd), чтобы в GNS3'е все правильно включилось, нужно добавить в настройках строки:
в раздел Qemu Options:
-vnc none -vga none -m 1024 -icount auto -hdachs 980,16,32
в раздел Kernel cmd line:
-append ide_generic.probe_mask=0x01 ide_core.chs=0.0:980,16,32 auto nousb console=ttyS0,9600 bigphysarea=65536
В противном случае, в открывшемся окне QEMU примонтированные IDE устройства начнут "мерцать", а сама ASA перезагружаться с выводом дампа отладки.
После того, как из бинарника ASA вытащены ядро (vmlinuz) и корневая файловая система (initrd), чтобы в GNS3'е все правильно включилось, нужно добавить в настройках строки:
в раздел Qemu Options:
-vnc none -vga none -m 1024 -icount auto -hdachs 980,16,32
в раздел Kernel cmd line:
-append ide_generic.probe_mask=0x01 ide_core.chs=0.0:980,16,32 auto nousb console=ttyS0,9600 bigphysarea=65536
В противном случае, в открывшемся окне QEMU примонтированные IDE устройства начнут "мерцать", а сама ASA перезагружаться с выводом дампа отладки.
Windows Server Core ввод ключа и активация.
Взято отсюда: http://blogs.msdn.com/b/richin/archive/2008/04/09/activating-changing-product-key-on-windows-server-core-2008-after-installation.aspx
ввод ключа:
slmgr -ipk xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
активация:
slmgr -ato
В целом, полезный скрипт (просмотреть возможности - ввод slmgr без параметров или /?, но он ругнется...).
ввод ключа:
slmgr -ipk xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
активация:
slmgr -ato
В целом, полезный скрипт (просмотреть возможности - ввод slmgr без параметров или /?, но он ругнется...).
Windows 7 разрешить ICMP echo (ответы на ping'и)
По умолчанию встроенный файрол блокирует ответы сетевого интерфейса на пинги. Чтобы не отключать файр полностью, добавим некоторые (не все) типы ICMP:
1. из Панель управления\Система и безопасность\Брандмауэр Windows\Дополнительные параметры, добавим правило для входящих подключений,
2. Создать правило \ Настраиваемое \ Все программы \ Тип протокола = ICMPv4, Параметры протокола ICMP \ Настроить \ Определенные типы ICMP:
- Пакет слишком велик (очень важно для трафика на протоколе GRE, например, PPTP),
- Объект назначения не доступен,
- Эхо-запрос,
- Превышено время.
3. Определяем правило для Любых адресов \ Разрешаем подключения \ Применяем ко всем профилям
4. Сохраняем правило, например, под именем "ICMP-essentials"
Уф, все...
1. из Панель управления\Система и безопасность\Брандмауэр Windows\Дополнительные параметры, добавим правило для входящих подключений,
2. Создать правило \ Настраиваемое \ Все программы \ Тип протокола = ICMPv4, Параметры протокола ICMP \ Настроить \ Определенные типы ICMP:
- Пакет слишком велик (очень важно для трафика на протоколе GRE, например, PPTP),
- Объект назначения не доступен,
- Эхо-запрос,
- Превышено время.
3. Определяем правило для Любых адресов \ Разрешаем подключения \ Применяем ко всем профилям
4. Сохраняем правило, например, под именем "ICMP-essentials"
Уф, все...
пятница, 14 сентября 2012 г.
Cisco Frame Relay switching Connect feature.
В процессе изучения Frame Relay технологии попробовал сэмулировать сеть с парой FR свичей и 4мя клиентами (3 спока завязываются на хаб). Ниже схема включения (использовался IOU v3 от flyxj.cn):
Шнурки между двумя Frame Relay Switch'ами (FRS1 / 2) объединены в Multilink Frame Relay интерфейс - MFR0. Рутер R01 - хаб.
Получилось примерно так:
FRS1
FRS1:
interface MFR0
no ip address
encapsulation frame-relay IETF
no keepalive
frame-relay lmi-type ansi
frame-relay intf-type nni
!
interface Serial2/0
no ip address
encapsulation frame-relay MFR0
serial restart-delay 0
no arp frame-relay
!
interface Serial2/1
no ip address
encapsulation frame-relay MFR0
serial restart-delay 0
no arp frame-relay
!
interface Serial2/2
no ip address
encapsulation frame-relay IETF
serial restart-delay 0
frame-relay lmi-type ansi
frame-relay intf-type dce
!
interface Serial2/3
no ip address
encapsulation frame-relay IETF
serial restart-delay 0
frame-relay lmi-type ansi
frame-relay intf-type dce
!
connect R01-CE1 Serial2/2 102 Serial2/3 203
connect R1-CE2 Serial2/2 108 MFR0 207
connect R1-R6 Serial2/2 106 MFR0 702
---
FRS2:
interface MFR0
no ip address
encapsulation frame-relay IETF
no keepalive
frame-relay lmi-type ansi
frame-relay intf-type nni
!
interface Serial2/0
no ip address
encapsulation frame-relay MFR0
serial restart-delay 0
no arp frame-relay
!
interface Serial2/1
no ip address
encapsulation frame-relay MFR0
serial restart-delay 0
no arp frame-relay
!
interface Serial3/0
no ip address
encapsulation frame-relay IETF
serial restart-delay 0
frame-relay lmi-type ansi
frame-relay intf-type dce
!
interface Serial3/2
no ip address
encapsulation frame-relay IETF
serial restart-delay 0
frame-relay lmi-type ansi
frame-relay intf-type dce
!
connect CE2-R1 Serial3/2 708 MFR0 207
connect R6-R1 Serial3/0 607 MFR0 702
По уму, здесь нужно поменять serial интерфейсы к клиентам (которые inf-type dce) на субинтерфейсы и включить clock rate, ну да задача была разобраться в connect feature...
Шнурки между двумя Frame Relay Switch'ами (FRS1 / 2) объединены в Multilink Frame Relay интерфейс - MFR0. Рутер R01 - хаб.
Получилось примерно так:
FRS1
FRS1:
interface MFR0
no ip address
encapsulation frame-relay IETF
no keepalive
frame-relay lmi-type ansi
frame-relay intf-type nni
!
interface Serial2/0
no ip address
encapsulation frame-relay MFR0
serial restart-delay 0
no arp frame-relay
!
interface Serial2/1
no ip address
encapsulation frame-relay MFR0
serial restart-delay 0
no arp frame-relay
!
interface Serial2/2
no ip address
encapsulation frame-relay IETF
serial restart-delay 0
frame-relay lmi-type ansi
frame-relay intf-type dce
!
interface Serial2/3
no ip address
encapsulation frame-relay IETF
serial restart-delay 0
frame-relay lmi-type ansi
frame-relay intf-type dce
!
connect R01-CE1 Serial2/2 102 Serial2/3 203
connect R1-CE2 Serial2/2 108 MFR0 207
connect R1-R6 Serial2/2 106 MFR0 702
---
FRS2:
interface MFR0
no ip address
encapsulation frame-relay IETF
no keepalive
frame-relay lmi-type ansi
frame-relay intf-type nni
!
interface Serial2/0
no ip address
encapsulation frame-relay MFR0
serial restart-delay 0
no arp frame-relay
!
interface Serial2/1
no ip address
encapsulation frame-relay MFR0
serial restart-delay 0
no arp frame-relay
!
interface Serial3/0
no ip address
encapsulation frame-relay IETF
serial restart-delay 0
frame-relay lmi-type ansi
frame-relay intf-type dce
!
interface Serial3/2
no ip address
encapsulation frame-relay IETF
serial restart-delay 0
frame-relay lmi-type ansi
frame-relay intf-type dce
!
connect CE2-R1 Serial3/2 708 MFR0 207
connect R6-R1 Serial3/0 607 MFR0 702
По уму, здесь нужно поменять serial интерфейсы к клиентам (которые inf-type dce) на субинтерфейсы и включить clock rate, ну да задача была разобраться в connect feature...
четверг, 13 сентября 2012 г.
JunOS Olive установка в Virtual Box, апгрейд.
На просторах Интернета полно статей по установке JunOS поверх фряхи.
Например, полезняшки здесь:
http://habrahabr.ru/post/111974/
здесь:
http://pauldotcom.com/2011/05/virtualizing-junos-on-vmware.html
здесь:
http://www.packetmischief.ca/2011/03/24/installing-olive-10-4r1-under-vmware/
и, конечно, здесь:
http://juniper.cluepon.net/index.php/Olive
В целом, алгоритм ясен:
- ставим фряху с большим разделом /var,
- достаем в "труднодоступных" местах jinstall-xxx.tgz,
- распаковываем и правим ряд параметров,
- пакуем с правками тарболл взад и,
- ставим во фре, как обычный пакет pkg_add.
В процессе изучения сабжа выяснилось несколько моментов:
- не каждая фряха одинаково полезна, наилучшие результаты достигались на версии 4.11 (это при живущей уже 9ке!),
- вопреки расхожему мнению, jinstall тарболл извлекается и из iso'шников,
- патчить / править тарбол можно на любой машине, где есть tar.
Начнем с подготовки виртуалки:
- выделяем 768Мб ОЗУ,
- выделяем IDE хард на 6Гб,
- отключаем звук, USB,
- создаем serial host pipe для COM1, пусть на /tmp/junos9com1
Собственно, скопипастенные действия для JunOS 9.6:
cd /var/tmp
mkdir jinst ; cd jinst ; tar xvzf ../jinstall-9.6R1.13-domestic-olive.tgz
# rm *.md5 *.sha1 *.sig
mkdir domestic ; cd domestic ; tar xvzf ../jbundle-9.6R1.13-domestic.tgz
rm *.md5 *.sha1 *.sig
mkdir pkgtools ; cd pkgtools ; tar xvzf ../pkgtools.tgz
cd pkg ; rm *.md5 *.sha1 *.sig ; cd ..
все распаковано и все контрольные суммы прибиты, теперь подменяем скрипт проверки (обращение будет возвращать код true)
cp /usr/bin/true bin/checkpic
пакуем все обратно, стирая созданные каталоги:
tar cvzf ../pkgtools.tgz *
cd .. ; rm -rf pkgtools
tar cvzf ../jbundle-9.6R1.13-domestic.tgz *
cd .. ; rm -rf domestic/
tar cvzf ../jinstall-9.6R1.13-domestic-no-checkpic.tgz *
cd .. ; rm -rf jinst/
В результате получаем тарболл jinstall-9.6R1.13-domestic-no-checkpic.tgz, который и будет установлен:
pkg_add jinstall-9.6R1.13-domestic-no-checkpic.tgz
перезагружаемся - reboot, параллельно можно открыть консольный вывод, чтобы видеть процесс установки JunOS, или, как рекомендуемый вариант, поправим запись:
chmod +w /boot/loader.conf
vi /boot/loader.conf
находим запись console="comconsole" и исправляем ее на
console="vidconsole"
если этого параметра нет - просто дописываем в конец файла и сохраняем.
Да, консольный вывод (используя socat), мне нравится такой вариант:
screen sudo socat /tmp/junos9com1 -
После всех проделанных процедур, получаем виртуальный рутер с ПО для Juniper M / T / MX Series.
В данной серии оборудования функционал распределяется по аппаратным модулям, ОС же играет роль центра управления, так что огромное количество фич будет не доступно, например, для работы NAT необходим service-interface (sr-0/0/0.0). Без него настройки NAT просто не применятся, кстати, в данной серии девайсов настройка NAT осуществляется через edit services nat.
Пошарив по задворкам тырнета наткнулся на пару утверждений, что для Оливки самый правильный JunOS - тот, который для J-Series (JSR?) рутеров - типа там у них все софтово творится, так что на эмуляторе пойдет кучеряво.
Надыбал junos-jsr-10.3R1.9-domestic.tgz, который сам по себе на фряху не ставится, но им можно проапгрейдить имеющийся 9.6 JunOS.
Правим тарбол практически аналогично, с добавками (для 10й и старших версий) - везде, где видим файлы +INSTALL и +REQUIRE находим в них строки проверки архитектуры и подменяем (в vi):
check_arch_compatibility()
{
#re_name=`/sbin/sysctl -n hw.re.name 2>/dev/null`
re_name='olive'
if [ -z "$re_name" ]; then
Error "hw.re.name sysctl not supported."
fi
комментируем строку re_name... и создаем свою с именем "olive", сохраняем все правки и пакуем обратно.
Теперь процедура обновления, в моем случае, патченный тарболл находится на локальном ftp серваке, так из cli выполняем:
request system software add unlink no-copy ftp://_username_:_password_@_ip_ftp_server_/Software/Juniper/junos-jsr-10.3R1.9-domestic-patched.tgz
Дожидаемся примерно таких строк:
JUNOS 10.3R1.9 will become active at next reboot
cat: /packages/junos-10.3R1.9-domestic.sha1: No such file or directory
Saving state for rollback ...
Removing /var/tmp/junos-10.3R1.9.tgz
и перезагружаем виртулку:
request system reboot
Новый рутер начал определяться уже как J4300, однако при настройке NAT (эта проверка настоятельно рекомендуется тем, кто планирует использовать сабж, как пограничное устройство), опять постиг облом:
error: usp_ipc_client_open: failed to connect to the server after 1 retries
поиск по ошибке указал на то, что в девайсе не хватает модуля, что проверка шасси и подтвердила:
show chassis fpc
Temp CPU Utilization (%) Memory Utilization (%)
Slot State (C) Total Interrupt DRAM (MB) Heap Buffer
0 Empty
1 Empty
2 Empty
3 Empty
4 Empty
5 Empty
6 Empty
Кстати, здесь NAT настраивается через edit security nat...
Например, полезняшки здесь:
http://habrahabr.ru/post/111974/
здесь:
http://pauldotcom.com/2011/05/virtualizing-junos-on-vmware.html
здесь:
http://www.packetmischief.ca/2011/03/24/installing-olive-10-4r1-under-vmware/
и, конечно, здесь:
http://juniper.cluepon.net/index.php/Olive
В целом, алгоритм ясен:
- ставим фряху с большим разделом /var,
- достаем в "труднодоступных" местах jinstall-xxx.tgz,
- распаковываем и правим ряд параметров,
- пакуем с правками тарболл взад и,
- ставим во фре, как обычный пакет pkg_add.
В процессе изучения сабжа выяснилось несколько моментов:
- не каждая фряха одинаково полезна, наилучшие результаты достигались на версии 4.11 (это при живущей уже 9ке!),
- вопреки расхожему мнению, jinstall тарболл извлекается и из iso'шников,
- патчить / править тарбол можно на любой машине, где есть tar.
Начнем с подготовки виртуалки:
- выделяем 768Мб ОЗУ,
- выделяем IDE хард на 6Гб,
- отключаем звук, USB,
- создаем serial host pipe для COM1, пусть на /tmp/junos9com1
Собственно, скопипастенные действия для JunOS 9.6:
cd /var/tmp
mkdir jinst ; cd jinst ; tar xvzf ../jinstall-9.6R1.13-domestic-olive.tgz
# rm *.md5 *.sha1 *.sig
mkdir domestic ; cd domestic ; tar xvzf ../jbundle-9.6R1.13-domestic.tgz
rm *.md5 *.sha1 *.sig
mkdir pkgtools ; cd pkgtools ; tar xvzf ../pkgtools.tgz
cd pkg ; rm *.md5 *.sha1 *.sig ; cd ..
все распаковано и все контрольные суммы прибиты, теперь подменяем скрипт проверки (обращение будет возвращать код true)
cp /usr/bin/true bin/checkpic
пакуем все обратно, стирая созданные каталоги:
tar cvzf ../pkgtools.tgz *
cd .. ; rm -rf pkgtools
tar cvzf ../jbundle-9.6R1.13-domestic.tgz *
cd .. ; rm -rf domestic/
tar cvzf ../jinstall-9.6R1.13-domestic-no-checkpic.tgz *
cd .. ; rm -rf jinst/
В результате получаем тарболл jinstall-9.6R1.13-domestic-no-checkpic.tgz, который и будет установлен:
pkg_add jinstall-9.6R1.13-domestic-no-checkpic.tgz
перезагружаемся - reboot, параллельно можно открыть консольный вывод, чтобы видеть процесс установки JunOS, или, как рекомендуемый вариант, поправим запись:
chmod +w /boot/loader.conf
vi /boot/loader.conf
находим запись console="comconsole" и исправляем ее на
console="vidconsole"
если этого параметра нет - просто дописываем в конец файла и сохраняем.
Да, консольный вывод (используя socat), мне нравится такой вариант:
screen sudo socat /tmp/junos9com1 -
После всех проделанных процедур, получаем виртуальный рутер с ПО для Juniper M / T / MX Series.
В данной серии оборудования функционал распределяется по аппаратным модулям, ОС же играет роль центра управления, так что огромное количество фич будет не доступно, например, для работы NAT необходим service-interface (sr-0/0/0.0). Без него настройки NAT просто не применятся, кстати, в данной серии девайсов настройка NAT осуществляется через edit services nat.
Пошарив по задворкам тырнета наткнулся на пару утверждений, что для Оливки самый правильный JunOS - тот, который для J-Series (JSR?) рутеров - типа там у них все софтово творится, так что на эмуляторе пойдет кучеряво.
Надыбал junos-jsr-10.3R1.9-domestic.tgz, который сам по себе на фряху не ставится, но им можно проапгрейдить имеющийся 9.6 JunOS.
Правим тарбол практически аналогично, с добавками (для 10й и старших версий) - везде, где видим файлы +INSTALL и +REQUIRE находим в них строки проверки архитектуры и подменяем (в vi):
check_arch_compatibility()
{
#re_name=`/sbin/sysctl -n hw.re.name 2>/dev/null`
re_name='olive'
if [ -z "$re_name" ]; then
Error "hw.re.name sysctl not supported."
fi
комментируем строку re_name... и создаем свою с именем "olive", сохраняем все правки и пакуем обратно.
Теперь процедура обновления, в моем случае, патченный тарболл находится на локальном ftp серваке, так из cli выполняем:
request system software add unlink no-copy ftp://_username_:_password_@_ip_ftp_server_/Software/Juniper/junos-jsr-10.3R1.9-domestic-patched.tgz
Дожидаемся примерно таких строк:
JUNOS 10.3R1.9 will become active at next reboot
cat: /packages/junos-10.3R1.9-domestic.sha1: No such file or directory
Saving state for rollback ...
Removing /var/tmp/junos-10.3R1.9.tgz
и перезагружаем виртулку:
request system reboot
Новый рутер начал определяться уже как J4300, однако при настройке NAT (эта проверка настоятельно рекомендуется тем, кто планирует использовать сабж, как пограничное устройство), опять постиг облом:
error: usp_ipc_client_open: failed to connect to the server after 1 retries
поиск по ошибке указал на то, что в девайсе не хватает модуля, что проверка шасси и подтвердила:
show chassis fpc
Temp CPU Utilization (%) Memory Utilization (%)
Slot State (C) Total Interrupt DRAM (MB) Heap Buffer
0 Empty
1 Empty
2 Empty
3 Empty
4 Empty
5 Empty
6 Empty
Кстати, здесь NAT настраивается через edit security nat...
пятница, 7 сентября 2012 г.
Привилегированный доступ к машинам Virtual Box для подключения к среде GNS3
Для создания интерфейсов подключения GNS3 запускается с правами суперпользователя (параметры запуска предваряются вариантом sudo для графических приложений - gksudo /home/_username_/GNS3-0.8.2-BETA-src/gns3.pyw). Аналогично для подключения vbox хостов приложению Virtual Box также необходимо запускаться через gksudo, при этом, файл со списком настроенных виртуалок будет использовать путь /root/.VirtualBox/VirtualBox.xml, то есть при старте мы не увидим ни одной машины. Для исправления:
бэкапим существующий файл
sudo cp /root/.VirtualBox/VirtualBox.xml /root/.VirtualBox/VirtualBox.xml.backup
копируем не-sudo файл )из домашнего каталога
sudo cp /home/_username_/.VirtualBox/VirtualBox.xml /root/.VirtualBox/VirtualBox.xml
Теперь, машины, созданные не с использованием путей по-умолчанию, будут полностью доступны и работоспособны, а те, что создавались с дефолтными параметрами, будут ссылаться на конфиги и vHHD в каталогах
src="Machines/_виртуалка_", эти сокращенные пути по факту: /home/_username_/.VirtualBox/Machines/, так что это необходимо поправить в файле
sudo vim /root/.VirtualBox/VirtualBox.xml
в разделе MachineRegistry
бэкапим существующий файл
sudo cp /root/.VirtualBox/VirtualBox.xml /root/.VirtualBox/VirtualBox.xml.backup
копируем не-sudo файл )из домашнего каталога
sudo cp /home/_username_/.VirtualBox/VirtualBox.xml /root/.VirtualBox/VirtualBox.xml
Теперь, машины, созданные не с использованием путей по-умолчанию, будут полностью доступны и работоспособны, а те, что создавались с дефолтными параметрами, будут ссылаться на конфиги и vHHD в каталогах
src="Machines/_виртуалка_", эти сокращенные пути по факту: /home/_username_/.VirtualBox/Machines/, так что это необходимо поправить в файле
sudo vim /root/.VirtualBox/VirtualBox.xml
в разделе MachineRegistry
Virtual Box ошибка выключения и запуск в среде GNS3
При использовании Oracle Virtual Box версии 4.1.8 было замечено два глюка:
1. при выключении питания, если в работе использовались виртуалки с vboxnetX адаптерами, это выключение замораживалось с ошибкой unregister_netdevice waiting for vboxnetX to become free
2. при тестировании подключения виртуальных машин Virtual Box в среде GNS3 выдавалась ошибка vboxapi module cannot be loaded
Обе эти проблемы решались сначала полным удалением существующего приложения (4.1.8) и новой установкой пакета версии 4.1.20, собранного конкретно под текущую версию ОС - не All distributions! В моем случае, это пакет для Ubuntu 12.04 LTS ("Precise Pangolin") i386 (http://download.virtualbox.org/virtualbox/4.1.20/virtualbox-4.1_4.1.20-80170~Ubuntu~precise_i386.deb).
В результате 1й глюк успешно побеждается, 2й же немного видоизменяется - при тесте выдается ошибка failed to start xdotool, но это чинится установкой этих самых тулзов:
sudo apt-get install xdotool
1. при выключении питания, если в работе использовались виртуалки с vboxnetX адаптерами, это выключение замораживалось с ошибкой unregister_netdevice waiting for vboxnetX to become free
2. при тестировании подключения виртуальных машин Virtual Box в среде GNS3 выдавалась ошибка vboxapi module cannot be loaded
Обе эти проблемы решались сначала полным удалением существующего приложения (4.1.8) и новой установкой пакета версии 4.1.20, собранного конкретно под текущую версию ОС - не All distributions! В моем случае, это пакет для Ubuntu 12.04 LTS ("Precise Pangolin") i386 (http://download.virtualbox.org/virtualbox/4.1.20/virtualbox-4.1_4.1.20-80170~Ubuntu~precise_i386.deb).
В результате 1й глюк успешно побеждается, 2й же немного видоизменяется - при тесте выдается ошибка failed to start xdotool, но это чинится установкой этих самых тулзов:
sudo apt-get install xdotool
вторник, 4 сентября 2012 г.
Применение патча 0029-Integrating-Dynamips-and-GNS3-UDP-tunnels-Patches.patch для QEMU 1.0 в Ubuntu 12.04
Без данного патча подключить в GNS3 (в моем случае это версия GNS3-0.8.2-BETA) такие полезняшки как Cisco ASA и JunOS (Olive) router можно, но сложно. На просторах Интернета куча статей и HowTo по данному вопросу, однако коротко и ясно все решение было изложено у коллеги: http://kaktyc.wordpress.com/2012/05/18/запуск-qemu-хоста-в-gns3/.
В процессе использования приведенных инструкций проявилась и парочка граблей. В целом, порядок действий такой:
- выделяем каталог под сборку пакета - mkdir gns3-qemu
- проверяем версию QEMU на нашей машине (грабли №1 - нужна версия 1.0)
стоит обратить внимание, что просто команды qemu (как было раньше) уже нет, варианты:
qemu [Tab]
qemu-ga qemu-ifup qemulator qemu-system-i386
qemu-i386 qemu-img qemu-launcher qemu-system-x86_64
qemu-ifdown qemu-io qemu-nbd qemu-x86_64
$ qemu-i386 -version
qemu-i386 version 1.0 (qemu-kvm-1.0), Copyright (c) 2003-2008 Fabrice Bellard
$ qemu-system-i386 -version
QEMU emulator version 1.0 (qemu-kvm-1.0), Copyright (c) 2003-2008 Fabrice Bellard
Если версия ниже - необходимо проапгрейдиться до 1.0, для "правильной" версии устанавливаем девелоперские инструменты и сорцы,
- sudo apt-get build-dep qemu-kvm ,
- apt-get source qemu-kvm ,
- благодаря ссылке коллеги kaktyc'а о том, что Gentoo'шный патч подходит, качаем его:
wget -c http://dev.gentoo.org/~lu_zero/distfiles/qemu-1.0-patches.tar.xz
там также есть патчи qemu-1.1.0-patches.tar.xz и qemu-1.1.0-r1-patches.tar.xz - более поздние, но они нам не подходят,
- распаковываем и применяем нужный патч на сорцы:
tar xvJf qemu-1.0-patches.tar.xz
cd qemu-kvm-1.0+noroms/
patch -p1 < ../patches/0029-Integrating-Dynamips-and-GNS3-UDP-tunnels-Patches.patch
- теперь создаем deb пакет с примененным патчем:
dpkg-buildpackage -b -uc -nc -j4
- в результате будут созданы два! deb пакета (в моем случае, архитектуры i386, у коллеги amd64):
qemu_1.0+noroms-0ubuntu14.1_i386.deb и qemu-kvm_1.0+noroms-0ubuntu14.1_i386.deb
Первый содержит:
dpkg --contents qemu_1.0+noroms-0ubuntu14.1_i386.deb
drwxr-xr-x root/root 0 2012-09-02 00:55 ./
drwxr-xr-x root/root 0 2012-09-02 00:55 ./usr/
drwxr-xr-x root/root 0 2012-09-02 00:55 ./usr/share/
drwxr-xr-x root/root 0 2012-09-02 00:55 ./usr/share/doc/
drwxr-xr-x root/root 0 2012-09-02 00:55 ./usr/share/doc/qemu/
-rw-r--r-- root/root 19020 2012-09-02 00:48 ./usr/share/doc/qemu/changelog.Debian.gz
-rw-r--r-- root/root 4079 2012-09-02 00:48 ./usr/share/doc/qemu/copyright
то есть только раздел doc, а вот второй:
dpkg --contents qemu-kvm_1.0+noroms-0ubuntu14.1_i386.deb
...
drwxr-xr-x root/root 0 2012-09-02 00:55 ./usr/bin/
-rwxr-xr-x root/root 13720 2011-12-04 14:38 ./usr/bin/kvm_stat
-rwxr-xr-x root/root 987712 2012-09-02 00:55 ./usr/bin/qemu-i386
-rwxr-xr-x root/root 416616 2012-09-02 00:55 ./usr/bin/qemu-io
-rwxr-xr-x root/root 1164148 2012-09-02 00:55 ./usr/bin/qemu-x86_64
-rwxr-xr-x root/root 3734788 2012-09-02 00:55 ./usr/bin/qemu-system-x86_64
-rwxr-xr-x root/root 3566468 2012-09-02 00:55 ./usr/bin/qemu-system-i386
-rwxr-xr-x root/root 124552 2012-09-02 00:55 ./usr/bin/qemu-ga
...
Его-то нам и нужно установить:
- sudo dpkg -i qemu-kvm_1.0+noroms-0ubuntu14.1_i386.deb
В результате патч применится.
Непосредственно в самом GNS3 для запуска QEMU в разделе Edit / Preferences / Qemu / General Settings / Path to Qemu указываем не просто qemu, а qemu-system-i386 (Грабли №2).
Теперь тест - Test Settings пройдет успешно.
В процессе использования приведенных инструкций проявилась и парочка граблей. В целом, порядок действий такой:
- выделяем каталог под сборку пакета - mkdir gns3-qemu
- проверяем версию QEMU на нашей машине (грабли №1 - нужна версия 1.0)
стоит обратить внимание, что просто команды qemu (как было раньше) уже нет, варианты:
qemu [Tab]
qemu-ga qemu-ifup qemulator qemu-system-i386
qemu-i386 qemu-img qemu-launcher qemu-system-x86_64
qemu-ifdown qemu-io qemu-nbd qemu-x86_64
$ qemu-i386 -version
qemu-i386 version 1.0 (qemu-kvm-1.0), Copyright (c) 2003-2008 Fabrice Bellard
$ qemu-system-i386 -version
QEMU emulator version 1.0 (qemu-kvm-1.0), Copyright (c) 2003-2008 Fabrice Bellard
Если версия ниже - необходимо проапгрейдиться до 1.0, для "правильной" версии устанавливаем девелоперские инструменты и сорцы,
- sudo apt-get build-dep qemu-kvm ,
- apt-get source qemu-kvm ,
- благодаря ссылке коллеги kaktyc'а о том, что Gentoo'шный патч подходит, качаем его:
wget -c http://dev.gentoo.org/~lu_zero/distfiles/qemu-1.0-patches.tar.xz
там также есть патчи qemu-1.1.0-patches.tar.xz и qemu-1.1.0-r1-patches.tar.xz - более поздние, но они нам не подходят,
- распаковываем и применяем нужный патч на сорцы:
tar xvJf qemu-1.0-patches.tar.xz
cd qemu-kvm-1.0+noroms/
patch -p1 < ../patches/0029-Integrating-Dynamips-and-GNS3-UDP-tunnels-Patches.patch
- теперь создаем deb пакет с примененным патчем:
dpkg-buildpackage -b -uc -nc -j4
- в результате будут созданы два! deb пакета (в моем случае, архитектуры i386, у коллеги amd64):
qemu_1.0+noroms-0ubuntu14.1_i386.deb и qemu-kvm_1.0+noroms-0ubuntu14.1_i386.deb
Первый содержит:
dpkg --contents qemu_1.0+noroms-0ubuntu14.1_i386.deb
drwxr-xr-x root/root 0 2012-09-02 00:55 ./
drwxr-xr-x root/root 0 2012-09-02 00:55 ./usr/
drwxr-xr-x root/root 0 2012-09-02 00:55 ./usr/share/
drwxr-xr-x root/root 0 2012-09-02 00:55 ./usr/share/doc/
drwxr-xr-x root/root 0 2012-09-02 00:55 ./usr/share/doc/qemu/
-rw-r--r-- root/root 19020 2012-09-02 00:48 ./usr/share/doc/qemu/changelog.Debian.gz
-rw-r--r-- root/root 4079 2012-09-02 00:48 ./usr/share/doc/qemu/copyright
то есть только раздел doc, а вот второй:
dpkg --contents qemu-kvm_1.0+noroms-0ubuntu14.1_i386.deb
...
drwxr-xr-x root/root 0 2012-09-02 00:55 ./usr/bin/
-rwxr-xr-x root/root 13720 2011-12-04 14:38 ./usr/bin/kvm_stat
-rwxr-xr-x root/root 987712 2012-09-02 00:55 ./usr/bin/qemu-i386
-rwxr-xr-x root/root 416616 2012-09-02 00:55 ./usr/bin/qemu-io
-rwxr-xr-x root/root 1164148 2012-09-02 00:55 ./usr/bin/qemu-x86_64
-rwxr-xr-x root/root 3734788 2012-09-02 00:55 ./usr/bin/qemu-system-x86_64
-rwxr-xr-x root/root 3566468 2012-09-02 00:55 ./usr/bin/qemu-system-i386
-rwxr-xr-x root/root 124552 2012-09-02 00:55 ./usr/bin/qemu-ga
...
Его-то нам и нужно установить:
- sudo dpkg -i qemu-kvm_1.0+noroms-0ubuntu14.1_i386.deb
В результате патч применится.
Непосредственно в самом GNS3 для запуска QEMU в разделе Edit / Preferences / Qemu / General Settings / Path to Qemu указываем не просто qemu, а qemu-system-i386 (Грабли №2).
Теперь тест - Test Settings пройдет успешно.
Проброс портов через SSH Линукс клиентом и Putty
В мемориз.
В "родном" Linux ssh client делается так:
ssh -L 44433:192.168.75.2:443 -L 54433:192.168.75.200:443 -L 43389:192.168.75.4:3389 username@ssh_gateway -N
в данном случае это не только port-forward, но еще и port-trigger (позднее мы будем коннектиться на localhost по портам, первым в записях -L).
В Putty похожее также реализовано (например, здесь: http://www.virtuallifestyle.nl/2010/03/tunneling-a-vsphere-client-connection-over-ssh/ отличное описание проброса нужных портов для VMWare Client'а с учетом того, что конкретно VMWare клиенту не следует устанавливать переключение портов - port-trigger, так как ему нужны свои родные порты 443,902 и 903). В целом, для Putty действия такие:
- новая ssh сессия (Session) - указываем ssh хост (будет ssh gateway),
- в разделе Connection / SSH / Tunnels / Add new forwarded port: указываем Source Port как Local (можно также указать, что он IPv4 или оставить Auto), в Destination Указываем адрес и порт на которые нужно будет пробросить коннекшен вида ip_server:port,
- добавляем Add это в таблицу Forwarded Ports,
- можно вернувшись в раздел Session сохранить (поименовав) ее.
В "родном" Linux ssh client делается так:
ssh -L 44433:192.168.75.2:443 -L 54433:192.168.75.200:443 -L 43389:192.168.75.4:3389 username@ssh_gateway -N
в данном случае это не только port-forward, но еще и port-trigger (позднее мы будем коннектиться на localhost по портам, первым в записях -L).
В Putty похожее также реализовано (например, здесь: http://www.virtuallifestyle.nl/2010/03/tunneling-a-vsphere-client-connection-over-ssh/ отличное описание проброса нужных портов для VMWare Client'а с учетом того, что конкретно VMWare клиенту не следует устанавливать переключение портов - port-trigger, так как ему нужны свои родные порты 443,902 и 903). В целом, для Putty действия такие:
- новая ssh сессия (Session) - указываем ssh хост (будет ssh gateway),
- в разделе Connection / SSH / Tunnels / Add new forwarded port: указываем Source Port как Local (можно также указать, что он IPv4 или оставить Auto), в Destination Указываем адрес и порт на которые нужно будет пробросить коннекшен вида ip_server:port,
- добавляем Add это в таблицу Forwarded Ports,
- можно вернувшись в раздел Session сохранить (поименовав) ее.
понедельник, 3 сентября 2012 г.
Создание ярлыков запуска (Launcher'ов) в Ubuntu 12.04 с Gnome Shell
В мемориз.
В Ubuntu 12.04 (даже с Gnome Shell'ом) создание Launcher'ов по контекстному меню больше не работает, на рабочем столе из него можно только создавать файлы/папки, да "копипастить" всякое. Теперь эта ланчеры создаются в приложении alacarte (sudo apt-get install alacarte) - оно же Applications / System Tools / Preferences / Main Menu
Там создаем новый item, а дальше все как на обычном Launcher'е.
В Ubuntu 12.04 (даже с Gnome Shell'ом) создание Launcher'ов по контекстному меню больше не работает, на рабочем столе из него можно только создавать файлы/папки, да "копипастить" всякое. Теперь эта ланчеры создаются в приложении alacarte (sudo apt-get install alacarte) - оно же Applications / System Tools / Preferences / Main Menu
Там создаем новый item, а дальше все как на обычном Launcher'е.
воскресенье, 2 сентября 2012 г.
Установка и базовая настройка SliTaz 4.0
В 4й версии был убран установочный скрипт slitaz-installer, при этом способ установки сабжа из консоли стал не совсем понятен. После недолгих поисков, удалось частично понять новую идеологию дистрибутива. Итак,
Установка
tazinst new tazinst.conf
создается в текущем каталоге файл tazinst.conf с параметрами установки. Они описагы в доке:
http://hg.slitaz.org/slitaz-tools/raw-file/6e8c38a0aee3/doc/tazinst.en.html
...
The setup file contains the following variables:
The variables describing the installation source:
*INST_TYPE: the type of media containing the SliTaz source files, either: cdrom (SliTaz LiveCD), usb (SliTaz LiveUSB), iso (ISO image of SliTaz), web (ISO image on the Web), weboot, ex: INST_TYPE=web
SRC_FILE: the name of the source file containing SliTaz. It depends on the type of support:
cdrom (SliTaz LiveCD): unused
usb (SliTaz LiveUSB): name of the partition on the host USB device, ex: SRC_FILE=/dev/sdb1
iso (ISO image of SliTaz): name of the ISO file, ex: SRC_FILE=~/slitaz.3.0.iso
web (ISO image on the Web): name of the URL, ex: SRC_FILE=http://mirror.slitaz.org/iso/cooking/slitaz-cooking.iso. Note that 3 URLs are predefined: 'stable', 'cooking, 'rolling', ex: SRC_FILE=cooking downloads the latest cooking available from the web
weboot: unused
The variables describing the target partition:
*TGT_PARTITION: the name of the target partition SliTaz will install to or update, ex: TGT_PARTITION=/dev/hda3
TGT_FS: if this variable is entered, the target partition will be formatted in the file system specified, otherwise the partition will be cleaned and /home will be preserved, ex: TGT_FS=ext3
TGT_HOME: this variable indicates if need be, the name of the partition to receive the /home directory, ex: TGT_HOME=/dev/hda5
TGT_HOME_FS: if this variable is entered, the home partition will be formatted in the file system specified, ex: TGT_HOME_FS=ext2
The system settings:
TGT_HOSTNAME: name of the system, ex: TGT_HOSTNAME=hd-slitaz, by default TGT_HOSTNAME=slitaz
TGT_ROOT_PWD: superuser password, ex: TGT_ROOT_PWD=toor, by default TGT_ROOT_PWD=root
TGT_USER: user name, ex: TGT_USER=toto, by default TGT_USER=tux
TGT_USER_PWD: user password, ex: TGT_USER_PWD=titi, by default TGT_USER_PWD=tux
The boot loader (bootloader) configuration variables:
TGT_GRUB: install the GRUB bootloader (yes or no), ex: TGT_GRUB=yes, by default TGT_GRUB=no
TGT_WINBOOT: if this variable is entered, it indicates the partition containing Windows© to implement a dual-boot. It can also be set to 'auto', in this case the dual-boot will be on the first partition Windows© detects, ex: TGT_WINBOOT=auto
Note that only variables preceded by a asterisk are mandatory, others are optional. Thus a minimal setup file can be:
INST_TYPE=cdrom
TGT_PARTITION=/dev/hda3
This file will install SliTaz on /dev/hda3 formatting the partition from a LiveCD.
...
В моем случае хватило указать:
INST_TYPE=cdrom
TGT_PARTITION=/dev/sda1
TGT_FS=ext3
TGT_HOSTNAME=slitaz4-test
TGT_ROOT_PWD=***
TGT_USER=My
TGT_USER_PWD=***
TGT_GRUB=yes
Теперь запускаем установку
tazinst install tazinst.conf
после окончания убеждаемся, что Grub поставился и перезагружаемся reboot
--
Настройка сети - правка файла /etc/network.conf
INTERFACE="eth0"
DHCP="no"
STATIC="yes"
IP="172.17.17.20"
NETMASK="255.255.255.0"
GATEWAY="172.17.17.1"
DNS_SERVER="172.17.17.1"
После правки /etc/init.d/network.sh restart
--
Для активации ssh сервера (здесь это dropbear) дописываем его в автозапуск (под root'ом):
vi /etc/rcS.conf
RUN_DAEMONS="...httpd dropbear"
:wq
запускаем сервис (ключи сгенерятся автоматом)
/etc/init.d/dropbear start
--
Установка пакетов (sudo, vim, screen...)
Помощь по системе управления пакетами: http://doc.slitaz.org/ru:handbook:packages
Help самой проги - tazpkg usage
# tazpkg recharge
# tazpkg get-install sudo
# visudo
для My
$ sudo tazpkg get-install screen vim fail2ban
--
Удаленное web управление - Tazpanel
для доступа извне правим конфиг:
sudo vim /etc/slitaz/httpd.conf (! не спутать с /etc/httpd.conf!)
добавляем после A:127.0.0.1
A:172.17.17. (разрешаем подсеть - точка в конце нужна!)
Сохраняем, перезагружаем панель
sudo /etc/init.d/tazpanel restart
теперю появится доступ для пользователя root на адресе хоста на порту 82:
http://172.17.17.20:82
Установка
tazinst new tazinst.conf
создается в текущем каталоге файл tazinst.conf с параметрами установки. Они описагы в доке:
http://hg.slitaz.org/slitaz-tools/raw-file/6e8c38a0aee3/doc/tazinst.en.html
...
The setup file contains the following variables:
The variables describing the installation source:
*INST_TYPE: the type of media containing the SliTaz source files, either: cdrom (SliTaz LiveCD), usb (SliTaz LiveUSB), iso (ISO image of SliTaz), web (ISO image on the Web), weboot, ex: INST_TYPE=web
SRC_FILE: the name of the source file containing SliTaz. It depends on the type of support:
cdrom (SliTaz LiveCD): unused
usb (SliTaz LiveUSB): name of the partition on the host USB device, ex: SRC_FILE=/dev/sdb1
iso (ISO image of SliTaz): name of the ISO file, ex: SRC_FILE=~/slitaz.3.0.iso
web (ISO image on the Web): name of the URL, ex: SRC_FILE=http://mirror.slitaz.org/iso/cooking/slitaz-cooking.iso. Note that 3 URLs are predefined: 'stable', 'cooking, 'rolling', ex: SRC_FILE=cooking downloads the latest cooking available from the web
weboot: unused
The variables describing the target partition:
*TGT_PARTITION: the name of the target partition SliTaz will install to or update, ex: TGT_PARTITION=/dev/hda3
TGT_FS: if this variable is entered, the target partition will be formatted in the file system specified, otherwise the partition will be cleaned and /home will be preserved, ex: TGT_FS=ext3
TGT_HOME: this variable indicates if need be, the name of the partition to receive the /home directory, ex: TGT_HOME=/dev/hda5
TGT_HOME_FS: if this variable is entered, the home partition will be formatted in the file system specified, ex: TGT_HOME_FS=ext2
The system settings:
TGT_HOSTNAME: name of the system, ex: TGT_HOSTNAME=hd-slitaz, by default TGT_HOSTNAME=slitaz
TGT_ROOT_PWD: superuser password, ex: TGT_ROOT_PWD=toor, by default TGT_ROOT_PWD=root
TGT_USER: user name, ex: TGT_USER=toto, by default TGT_USER=tux
TGT_USER_PWD: user password, ex: TGT_USER_PWD=titi, by default TGT_USER_PWD=tux
The boot loader (bootloader) configuration variables:
TGT_GRUB: install the GRUB bootloader (yes or no), ex: TGT_GRUB=yes, by default TGT_GRUB=no
TGT_WINBOOT: if this variable is entered, it indicates the partition containing Windows© to implement a dual-boot. It can also be set to 'auto', in this case the dual-boot will be on the first partition Windows© detects, ex: TGT_WINBOOT=auto
Note that only variables preceded by a asterisk are mandatory, others are optional. Thus a minimal setup file can be:
INST_TYPE=cdrom
TGT_PARTITION=/dev/hda3
This file will install SliTaz on /dev/hda3 formatting the partition from a LiveCD.
...
В моем случае хватило указать:
INST_TYPE=cdrom
TGT_PARTITION=/dev/sda1
TGT_FS=ext3
TGT_HOSTNAME=slitaz4-test
TGT_ROOT_PWD=***
TGT_USER=My
TGT_USER_PWD=***
TGT_GRUB=yes
Теперь запускаем установку
tazinst install tazinst.conf
после окончания убеждаемся, что Grub поставился и перезагружаемся reboot
--
Настройка сети - правка файла /etc/network.conf
INTERFACE="eth0"
DHCP="no"
STATIC="yes"
IP="172.17.17.20"
NETMASK="255.255.255.0"
GATEWAY="172.17.17.1"
DNS_SERVER="172.17.17.1"
После правки /etc/init.d/network.sh restart
--
Для активации ssh сервера (здесь это dropbear) дописываем его в автозапуск (под root'ом):
vi /etc/rcS.conf
RUN_DAEMONS="...httpd dropbear"
:wq
запускаем сервис (ключи сгенерятся автоматом)
/etc/init.d/dropbear start
--
Установка пакетов (sudo, vim, screen...)
Помощь по системе управления пакетами: http://doc.slitaz.org/ru:handbook:packages
Help самой проги - tazpkg usage
# tazpkg recharge
# tazpkg get-install sudo
# visudo
для My
$ sudo tazpkg get-install screen vim fail2ban
--
Удаленное web управление - Tazpanel
для доступа извне правим конфиг:
sudo vim /etc/slitaz/httpd.conf (! не спутать с /etc/httpd.conf!)
добавляем после A:127.0.0.1
A:172.17.17. (разрешаем подсеть - точка в конце нужна!)
Сохраняем, перезагружаем панель
sudo /etc/init.d/tazpanel restart
теперю появится доступ для пользователя root на адресе хоста на порту 82:
http://172.17.17.20:82
суббота, 1 сентября 2012 г.
Software Ip KVM (KeyboardVideoMouse).
В процессе поиска аппаратного KVM'а также были замечены софтовые решения для управления несколькими компами (с уже установленными ОС) по сети с одной клавы / мыши, оставаясь при этом относительно прозрачными - явно не запускаются RDP / VNC клиенты.
Итак по порядку.
MaxiVista
http://www.maxivista.com/kvm-software.htm
Вкратце описалово:
... Simply move the mouse cursor to the monitor of the PC you would like to control with the mouse and keyboard of the Primary PC. No manual switching necessary. The keyboard and mouse input is transmitted using any Ethernet, Wireless, Firewire or USB network connection. ...
Проприетарная реализация за денежку (стандартная версия стоит 40 баксов), работает на MS Windows / Mac OS.
Synergy
http://linuxcritic.wordpress.com/2009/09/09/synergy-a-software-kvm-switch-without-the-v/
Есть в репозиториях большинства дистрибутивов (например, вывод поиска в репе Ubuntu 12.04:
apt-cache search synergy
quicksynergy - GUI for easy configuration of Synergy
synergy - Share mouse, keyboard and clipboard over the network
так что все есть).
По ссылке впечатления коллеги от сабжа.
x2x
http://archive09.linux.com/feature/148824.html
Аналогично предыдущей Синергии есть в репозиториях:
apt-cache search x2x
x2vnc - A dual-screen hack - link an MS-Windows and X display
x2x - Link two X displays together, simulating a multiheaded display
Также была открыта для себя мега фича от Intel, но о ней позднее, тут надо разбираться...))
Итак по порядку.
MaxiVista
http://www.maxivista.com/kvm-software.htm
Вкратце описалово:
... Simply move the mouse cursor to the monitor of the PC you would like to control with the mouse and keyboard of the Primary PC. No manual switching necessary. The keyboard and mouse input is transmitted using any Ethernet, Wireless, Firewire or USB network connection. ...
Проприетарная реализация за денежку (стандартная версия стоит 40 баксов), работает на MS Windows / Mac OS.
Synergy
http://linuxcritic.wordpress.com/2009/09/09/synergy-a-software-kvm-switch-without-the-v/
Есть в репозиториях большинства дистрибутивов (например, вывод поиска в репе Ubuntu 12.04:
apt-cache search synergy
quicksynergy - GUI for easy configuration of Synergy
synergy - Share mouse, keyboard and clipboard over the network
так что все есть).
По ссылке впечатления коллеги от сабжа.
x2x
http://archive09.linux.com/feature/148824.html
Аналогично предыдущей Синергии есть в репозиториях:
apt-cache search x2x
x2vnc - A dual-screen hack - link an MS-Windows and X display
x2x - Link two X displays together, simulating a multiheaded display
Также была открыта для себя мега фича от Intel, но о ней позднее, тут надо разбираться...))
В поисках портативного KVM (KeyboardVideoMouse).
Имея дело с серверами (пусть даже это пылящийся в углу старенький десктоп), зачастую приходится подключаться к ним на месте, что при отсутствии рядом с объектом монитора и клавиатуры может породить небольшую проблему. Надеяться на заказчика / клиента, что серверная у него оборудована всем необходимым, не стоит. Гораздо лучше придерживаться правила "все свое ношу с собой", и если в отношении консольных кабелей, адаптеров, патчкордов, "резиновой" USB клавиатуры, микромышки и портативного DVDшника, это правило не создает особых трудностей, то таскать с собой монитор, мягко говоря неудобно (особенно ЭЛТ))). Все же надежда теплилась и мысль превратить VGA выход на ноуте во вход (VGA grabber) софтовыми средствами преследовала чуть чаще, чем постоянно. Однако долгие поиски в корне обломали эту хрупкую надежду, представив, однако, пару вариантов.
Практически сразу на словосочетания "vga grabber" и "vga to usb kvm" Гугл выдал ссылки на мегаполезняшку, но за хорошие бабки:
http://www.epiphan.com/products/frame-grabbers/kvm2usb/?gclid=CLLoz4mL9rECFYOJDgodrHoAfg
Из описания: ... Epiphan Systems' KVM2USB™ product is a compact pocket sized portable device that conveys the VGA stream from any host computer to a laptop, while emulating the laptop's keyboard and mouse outputs. ...
С разными насадками-переходниками USB - PS/2 и портативными размерами, девайс практически приближается к идеалу, но вот ценничек... 400 баксов без учета доставки и VAT (что-то типа нашего НДСа).
Так что поиск продолжился.
Следующая остановка в гуглении произошла на, к сожалению, помершем проекте:
http://okvm.sourceforge.net/kvmoverip.html
OKVM - опенсорсный проект, подразумевавший создание как программной, так и аппаратной части для KVM'а с управлением по VNC, однако:
... The okvm project team in 2005 developed an open source okvm KVM Development Kit - so engineers could cost effectively roll their own integrated KVM over IP control appliances. ...
... A number of the KVM PCI cards were produced - sponsored by Opengear. However this project did not find traction in the developer community. So kits are no longer available and development in this branch of the project has stopped. Also Opengear now sells a proprietary KVM over IP solution! ...
Вот так, продолжайся этот проект с 2005 года по сие время и кроме PCI карточки, точно был бы и USB'шный девайс. Ну да и земля пухом...
Были мысли таскать с собой IP KVM (от D-Link, TP-Link) с поправкой, что им нужно будет свое питание, но тут опять на взлете срезал ценник - минимум 15000 рублев на price.ru и Яндекс-маркете.
Короче, пока задач с headless серверами не много, пусть оно будет как есть - с матом к инженеграм и админам заказчика, какого этого в серверной нет моника. При увеличении же подобных задач уже будет рентабельнее прикупить Epiphan VGA2USB (время дороже).
Практически сразу на словосочетания "vga grabber" и "vga to usb kvm" Гугл выдал ссылки на мегаполезняшку, но за хорошие бабки:
http://www.epiphan.com/products/frame-grabbers/kvm2usb/?gclid=CLLoz4mL9rECFYOJDgodrHoAfg
Из описания: ... Epiphan Systems' KVM2USB™ product is a compact pocket sized portable device that conveys the VGA stream from any host computer to a laptop, while emulating the laptop's keyboard and mouse outputs. ...
С разными насадками-переходниками USB - PS/2 и портативными размерами, девайс практически приближается к идеалу, но вот ценничек... 400 баксов без учета доставки и VAT (что-то типа нашего НДСа).
Так что поиск продолжился.
Следующая остановка в гуглении произошла на, к сожалению, помершем проекте:
http://okvm.sourceforge.net/kvmoverip.html
OKVM - опенсорсный проект, подразумевавший создание как программной, так и аппаратной части для KVM'а с управлением по VNC, однако:
... The okvm project team in 2005 developed an open source okvm KVM Development Kit - so engineers could cost effectively roll their own integrated KVM over IP control appliances. ...
... A number of the KVM PCI cards were produced - sponsored by Opengear. However this project did not find traction in the developer community. So kits are no longer available and development in this branch of the project has stopped. Also Opengear now sells a proprietary KVM over IP solution! ...
Вот так, продолжайся этот проект с 2005 года по сие время и кроме PCI карточки, точно был бы и USB'шный девайс. Ну да и земля пухом...
Были мысли таскать с собой IP KVM (от D-Link, TP-Link) с поправкой, что им нужно будет свое питание, но тут опять на взлете срезал ценник - минимум 15000 рублев на price.ru и Яндекс-маркете.
Короче, пока задач с headless серверами не много, пусть оно будет как есть - с матом к инженеграм и админам заказчика, какого этого в серверной нет моника. При увеличении же подобных задач уже будет рентабельнее прикупить Epiphan VGA2USB (время дороже).
Показать скрытые каталоги / файлы (начинаются с "точки") в Gnome (Ubuntu).
В мемориз!
Если при выборе файлов / каталогов через стандартную форму Gnome не отображаются скрытые (с "точкой" в начале), а опций View данная форма не предоставляет, может помочь комбинация клавиш:
Ctrl + h
Если при выборе файлов / каталогов через стандартную форму Gnome не отображаются скрытые (с "точкой" в начале), а опций View данная форма не предоставляет, может помочь комбинация клавиш:
Ctrl + h
вторник, 21 августа 2012 г.
Увеличение размера виртуального диска в VMWare vSphere для машины под MS Windows Server 2008R2.
Останавливаем машину и во вкладке с ее свойствами добавляем нужное количество гигабайтов.
Стартуем виртуалку MS Windows Server 2008R2, в разделе Диспетчер Сервера / Хранилище / Управление дисками - видим недоразмеченное пространство диска, справа в разделе Действия, выбираем Дополниельные действия / Все задачи / Расширить раздел.
В Инете встречаются советы по использованию vmkfstools для работы с виртуальными дисками из CLI (http://www.vmware.com/support/developer/vcli/vcli41/doc/reference/vmkfstools.html/), а для расширения раздела использовать Dell ExtPart утилиту. Но тут все решилось штатными средствами.
Стартуем виртуалку MS Windows Server 2008R2, в разделе Диспетчер Сервера / Хранилище / Управление дисками - видим недоразмеченное пространство диска, справа в разделе Действия, выбираем Дополниельные действия / Все задачи / Расширить раздел.
В Инете встречаются советы по использованию vmkfstools для работы с виртуальными дисками из CLI (http://www.vmware.com/support/developer/vcli/vcli41/doc/reference/vmkfstools.html/), а для расширения раздела использовать Dell ExtPart утилиту. Но тут все решилось штатными средствами.
понедельник, 20 августа 2012 г.
Отсутствие BGP маршрутов на CE (Customer / Client Edge) маршрутизаторах при стыке CE-PE по eBGP и одной AS для клиентских филиалов.
При использовании MPLS VPN, одним из наиболее эффективных стыков провайдерских роутеров с клиентскими, является использование протокола BGP. Так клиенту выдается частная автономка и он импортирует свои маршруты в выделенный ему VRF. Данный стык подразумевает поддержку протокола BGP на пограничном оборудовании клиента, что можно считать минусом, однако в плюсе - отсутствие редистрибуции (золотое правило сетевика гласит, что редистрибуции маршрутов следует избегать, особенно двусторонней) и "прозрачность" настройки и вероятного траблшутинга. Есть только одни грабли: протокол BGP для предотвращения петель маршрутизации не примет от eBGP пира апдейты со своим номером автономки, а это именно тот случай, когда филиалы с одинаковыми частными номерами AS взаимодействуют с провайдерской сетью с другим номером AS, то есть являются eBGP соседями. Для решения этой проблемы при настройке MP-BGP раздела VRF нужно использовать опцию as-override:
router bgp _AS_
...
address-family ipv4 vrf _CLIENT1_
...
neighbor _ip_addr_ as-override
---
Теперь номера AS в апдейтах на границах CE-PE будут перезаписываться PE маршрутизаторами и приниматься CE.
Описание этой фичи:
http://fengnet.com/book/ios_mpls/ch06lev1sec1.html
https://supportforums.cisco.com/docs/DOC-21837
router bgp _AS_
...
address-family ipv4 vrf _CLIENT1_
...
neighbor _ip_addr_ as-override
---
Теперь номера AS в апдейтах на границах CE-PE будут перезаписываться PE маршрутизаторами и приниматься CE.
Описание этой фичи:
http://fengnet.com/book/ios_mpls/ch06lev1sec1.html
https://supportforums.cisco.com/docs/DOC-21837
Управление через SSH хостов виртуалок на VMWare vSphere 5>
Для получения нормального управления хостом виртуалок из консоли (SSH), делаем следующее:
из скачанного и установленного vSphere Client, заходим в Configuration / Software / Security Profile
жмем Properties и стартуем сервисы:
ESXShell
SSH
Direct Console UI
Теперь заходим под root'ом на менеджмент интерфейс.
Полезные команды:
esxcli
dcui
последняя дает доступ к интерфейсному меню, аналогичному тому, что выдается при локальном подключении (снова заходим по F2 под root'ом и меняем, что нужно).
P.S. Да, для старта сервисов в maintenance mode входить не нужно!
из скачанного и установленного vSphere Client, заходим в Configuration / Software / Security Profile
жмем Properties и стартуем сервисы:
ESXShell
SSH
Direct Console UI
Теперь заходим под root'ом на менеджмент интерфейс.
Полезные команды:
esxcli
dcui
последняя дает доступ к интерфейсному меню, аналогичному тому, что выдается при локальном подключении (снова заходим по F2 под root'ом и меняем, что нужно).
P.S. Да, для старта сервисов в maintenance mode входить не нужно!
воскресенье, 19 августа 2012 г.
Полезняшка. SSH клиент в браузере - GateOne
По наводке продвинутых людей заценил эту штукенцию:
http://liftoff.github.com/GateOne/About/index.html
для скачивания: https://github.com/downloads/liftoff/GateOne/gateone_1.0-2_all.deb
Предварительно на Debian/Ubuntu нужно поставить пакет python-support, который подтянет необходимый фреймворк - python-tornado
sudo apt-get install python-support
проверяем версии зависимых пакетов:
python -V
python -c "import tornado; print(tornado.version)"
ставим сам gateone:
sudo dpkg -i gateone_1.0-2_all.deb
после установки запускаем (для теста стартовал без аутентификации):
sudo /opt/gateone/gateone.py
при старте будут созданы необходимые каталоги и файл конфигурации, доступ на клиента https://_адрес_хоста_
Из Opera не особо работает, а из Firefox и Chrome завелся.
http://liftoff.github.com/GateOne/About/index.html
для скачивания: https://github.com/downloads/liftoff/GateOne/gateone_1.0-2_all.deb
Предварительно на Debian/Ubuntu нужно поставить пакет python-support, который подтянет необходимый фреймворк - python-tornado
sudo apt-get install python-support
проверяем версии зависимых пакетов:
python -V
python -c "import tornado; print(tornado.version)"
ставим сам gateone:
sudo dpkg -i gateone_1.0-2_all.deb
после установки запускаем (для теста стартовал без аутентификации):
sudo /opt/gateone/gateone.py
при старте будут созданы необходимые каталоги и файл конфигурации, доступ на клиента https://_адрес_хоста_
Из Opera не особо работает, а из Firefox и Chrome завелся.
Уже не новая нумерация BGP AS - автономных систем 32-битная
Документ: http://tools.ietf.org/html/rfc4893
Сейчас практически на всем новом оборудовании номера автономок 32-битные (вместо ранее использовавшихся 16-битных с приватными номерами от 64512 до 65535). Используется все это ажно с 2008 года.
О правилах передачи номеров в атрибутах апдейтов:
...
4.1. Interaction Between NEW BGP Speakers
A BGP speaker that supports 4-octet Autonomous System numbers SHOULD
advertise this to its peers using the BGP Capability Advertisements.
A BGP speaker that advertises such capability to a particular peer,
and receives from that peer the advertisement of such capability MUST
encode Autonomous System numbers as 4-octet entities in both the
AS_PATH and the AGGREGATOR attributes in the updates it sends to the
peer, and MUST assume that these attributes in the updates received
from the peer encode Autonomous System numbers as 4-octet entities.
The new attributes, AS4_PATH and AS4_AGGREGATOR SHOULD NOT be carried
in the UPDATE messages between NEW BGP peers. A NEW BGP speaker that
receives the AS4_PATH and AS4_AGGREGATOR path attributes in an UPDATE
message from a NEW BGP speaker SHOULD discard these path attributes
and continue processing the UPDATE message.
4.2. Interaction Between NEW and OLD BGP Speakers
4.2.1. BGP Peering
Note that peering between a NEW BGP speaker and an OLD one is
possible only if the NEW BGP speaker has a 2-octet AS number.
However, this document does not assume that an Autonomous System with
NEW speakers has to have a globally unique 2-octet AS number --
AS_TRANS could be used instead (even if a multiple Autonomous System
would use it).
...
Из настроек Циски:
hostname (config)#router bgp ?
<1-4294967295> Autonomous system number
<1.0-XX.YY> Autonomous system number
Про записи второго asdot вида рассказывают тут: http://tools.ietf.org/html/rfc5396
Сейчас практически на всем новом оборудовании номера автономок 32-битные (вместо ранее использовавшихся 16-битных с приватными номерами от 64512 до 65535). Используется все это ажно с 2008 года.
О правилах передачи номеров в атрибутах апдейтов:
...
4.1. Interaction Between NEW BGP Speakers
A BGP speaker that supports 4-octet Autonomous System numbers SHOULD
advertise this to its peers using the BGP Capability Advertisements.
A BGP speaker that advertises such capability to a particular peer,
and receives from that peer the advertisement of such capability MUST
encode Autonomous System numbers as 4-octet entities in both the
AS_PATH and the AGGREGATOR attributes in the updates it sends to the
peer, and MUST assume that these attributes in the updates received
from the peer encode Autonomous System numbers as 4-octet entities.
The new attributes, AS4_PATH and AS4_AGGREGATOR SHOULD NOT be carried
in the UPDATE messages between NEW BGP peers. A NEW BGP speaker that
receives the AS4_PATH and AS4_AGGREGATOR path attributes in an UPDATE
message from a NEW BGP speaker SHOULD discard these path attributes
and continue processing the UPDATE message.
4.2. Interaction Between NEW and OLD BGP Speakers
4.2.1. BGP Peering
Note that peering between a NEW BGP speaker and an OLD one is
possible only if the NEW BGP speaker has a 2-octet AS number.
However, this document does not assume that an Autonomous System with
NEW speakers has to have a globally unique 2-octet AS number --
AS_TRANS could be used instead (even if a multiple Autonomous System
would use it).
...
Из настроек Циски:
hostname (config)#router bgp ?
<1-4294967295> Autonomous system number
<1.0-XX.YY> Autonomous system number
Про записи второго asdot вида рассказывают тут: http://tools.ietf.org/html/rfc5396
Полезняшка. SSH/Telnet клиент с табами и настройкой copy/paste как в виндовом Putty
Давно искал под Ubuntu SSH клиента с функционалом, близким к виндовому Putty Connection Manager. То есть интересовало наличие табов с возможностью сохранить конекшены и копирование выделением мышью и вставка правой клавишей. Такая прога нашлась (я только что о ней узнал...): gnome-connection-manager
http://kuthulu.com/gcm/gnome-connection-manager_1.1.0_all.deb
Затачивается под себя в лучшем виде!
http://kuthulu.com/gcm/gnome-connection-manager_1.1.0_all.deb
Затачивается под себя в лучшем виде!
Появление новых интерфейсов ethN при смене MAC адресов
При миграции или перемещении виртуальной машины (в моем случае под Virtual Box) при ее старте в логах присутствуют сообщения вида:
dmesg | grep network
udev[xxx]: renamed network interface eth0 to ethN
Это происходит по причине привязки MAC адреса виртуальной сетевухи к номеру интерфейса. Также, так как IP адреса назначены на "старые" интерфейсы (eth0, eth1...), то новосозданные eth2... без сетевых настроек.
Для решения этой проблемы редактируем файл
sudo vim /etc/udev/rules.d/70-persistent-net.rules
Исправляем мак-адреса интерфейсов для нужных eth0/eth1, пользуясь новыми записями (ниже в файле), а эти новые записи затираем:
...
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:4a:90:da", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
...
# PCI device 0x8086:0x1004 (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:84:48:e3", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"
...
Жирным выделены МАСи, которые нужно "махнуть не глядя", а вторую запись потом удалить.
dmesg | grep network
udev[xxx]: renamed network interface eth0 to ethN
Это происходит по причине привязки MAC адреса виртуальной сетевухи к номеру интерфейса. Также, так как IP адреса назначены на "старые" интерфейсы (eth0, eth1...), то новосозданные eth2... без сетевых настроек.
Для решения этой проблемы редактируем файл
sudo vim /etc/udev/rules.d/70-persistent-net.rules
Исправляем мак-адреса интерфейсов для нужных eth0/eth1, пользуясь новыми записями (ниже в файле), а эти новые записи затираем:
...
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:4a:90:da", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
...
# PCI device 0x8086:0x1004 (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:84:48:e3", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth2"
...
Жирным выделены МАСи, которые нужно "махнуть не глядя", а вторую запись потом удалить.
среда, 15 августа 2012 г.
Протокол ISIS на SVI интерфейсах - ошибка вида CLNS-3-BADPACKET: ISIS: LAN Ln hello, packet (xxxx) or wire (yyyy) length invalid from
При активации динамического протокола маршрутизации на SVI интерфейсах L3 коммутаторов (catalyst 3750 >), из-за разницы в MTU для адресации CLNS и IP, состояние смежности не устанавливается с появлением сообщения об ошибке вида:
CLNS-3-BADPACKET: ISIS: LAN Ln hello, packet (xxxx) or wire (yyyy) length invalid from _mac_addr_...(SVI)
Данное сообщение рассматривалось в багтраке Циско:
http://www.cisco.com/en/US/docs/ios/12_2sr/release/notes/122SRcavs2.html
с советом:
CSCtk47960
Symptoms: Large CLNP packets may be dropped when forwarded over SIP- 200/Flexwan2 module. Header Syntax errors may be recorded on receiving host.
Remote side will generate the following:
%CLNS-3-BADPACKET: ISIS: L1 LSP, packet (902) or wire (896) length invalid
Conditions: This symptom is seen on Cisco 7600 switch with SIP-200 line card that is running Cisco IOS 12.2(33)SRD3 and later releases.
Issue is seen when packets larger than 911 bytes are sent (Payload and Header).
Workaround: If CLNS is only used for ISIS neighborships "no isis hello padding" can be configured to establish ISIS neighborship. For the LSP packets, configure lns-mtu 903 under router isis on the Cisco 7600 to make this work.
По факту для решения: не отключаем
router isis
hello padding
Проверим размер MTU для CLNS:
show clns int vlan N
обычно по-умолчанию используется размер пакета 1497, для IP MTU по-умолчанию 1500.
Чтобы не было проблем с установлением смежности (ISIS использует для этого настроенный NSAP адрес), выравниваем оба MTU и активируем протокол на SVI интерфейсе:
interface vlan 2
clns mtu 1400
ip mtu 1400
ip router isis
В результате получаем новые записи в таблице маршрутов.
CLNS-3-BADPACKET: ISIS: LAN Ln hello, packet (xxxx) or wire (yyyy) length invalid from _mac_addr_...(SVI)
Данное сообщение рассматривалось в багтраке Циско:
http://www.cisco.com/en/US/docs/ios/12_2sr/release/notes/122SRcavs2.html
с советом:
CSCtk47960
Symptoms: Large CLNP packets may be dropped when forwarded over SIP- 200/Flexwan2 module. Header Syntax errors may be recorded on receiving host.
Remote side will generate the following:
%CLNS-3-BADPACKET: ISIS: L1 LSP, packet (902) or wire (896) length invalid
Conditions: This symptom is seen on Cisco 7600 switch with SIP-200 line card that is running Cisco IOS 12.2(33)SRD3 and later releases.
Issue is seen when packets larger than 911 bytes are sent (Payload and Header).
Workaround: If CLNS is only used for ISIS neighborships "no isis hello padding" can be configured to establish ISIS neighborship. For the LSP packets, configure lns-mtu 903 under router isis on the Cisco 7600 to make this work.
По факту для решения: не отключаем
router isis
hello padding
Проверим размер MTU для CLNS:
show clns int vlan N
обычно по-умолчанию используется размер пакета 1497, для IP MTU по-умолчанию 1500.
Чтобы не было проблем с установлением смежности (ISIS использует для этого настроенный NSAP адрес), выравниваем оба MTU и активируем протокол на SVI интерфейсе:
interface vlan 2
clns mtu 1400
ip mtu 1400
ip router isis
В результате получаем новые записи в таблице маршрутов.
среда, 8 августа 2012 г.
Веб интерфейс для VirtualBox - phpvirtualbox
Для удаленного руления виртуалками на десктопе, без VNC и прочих Иксов, обнаружит тут этот самый веб интерфейс. В процессе установки вскрылась парочка граблей, к счастью, успешно преодоленных.
Итак десктоп Ubuntu 10.04 с беспроводкой (это важно, так как одни грабли заключаются именно в этой беспроводке), ставим на него веб сервер с соответствующими модулями (сам VirtualBox уже установлен).
sudo apt-get update
sudo apt-get install apache2 libapache2-mod-php5
cd /var/www
sudo mkdir vboxphp
cd vboxphp
качаем туда сабж:
sudo wget http://phpvirtualbox.googlecode.com/files/phpvirtualbox-4.1-7.zip
и распаковываем
unzip phpvirtualbox-4.1-7.zip
Теперь настроим конфиги, которыми веб-морда будет пользоваться:
sudo vim /etc/default/virtualbox
VBOXWEB_USER=mik17
VBOXWEB_HOST=172.17.17.101
в данном случае, указаны логин "хозяина" будущих и текущих виртуалок, а также адрес беспроводного интерфейса.
sudo cp /var/www/vboxphp/phpvirtualbox-4.1-7/config.php-example /var/www/vboxphp/phpvirtualbox-4.1-7/config.php
Копируем шаблон конфига и правим его:
sudo vim /var/www/vboxphp/phpvirtualbox-4.1-7/config.php
...
/* Username / Password for system user that runs VirtualBox */
var $username = 'mik17';
var $password = '***';
/* SOAP URL of vboxwebsrv (not phpVirtualBox's URL) */
var $location = 'http://172.17.17.101:18083/';
...
Проверяем статус сервиса Web VirtualBox (vboxweb-service):
sudo /etc/init.d/vboxweb-service status
несмотря на то, что статус сервиса running, в выводе netstat'а нет прослушиваемого порта 18083. В результате при обращении на страницу веб-морды после аутентификации будет выдаваться ошибка о невозможности соединиться с сервисом на этом порту. Причина в том, что беспроводной интерфейс получает сетевые параметры после аутентификации пользователя, так что для открытия порта на прослушивание нужно перезапустить сервис:
sudo /etc/init.d/vboxweb-service stop
sudo /etc/init.d/vboxweb-service start
Проверим порты:
netstat -a | grep LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost:ipp *:* LISTEN
tcp 0 0 mik17-note.local:18083 *:* LISTEN
Теперь, скорее всего веб интерфейс заведется, но может и выдать такую ошибку (это вторые грабли):
- error - "Error logging to vboxwebsrv".
Лечится данный недуг так:
VBoxManage setproperty websrvauthlibrary default
В результате получаем удаленное управление виртуалками на ноуте.
Итак десктоп Ubuntu 10.04 с беспроводкой (это важно, так как одни грабли заключаются именно в этой беспроводке), ставим на него веб сервер с соответствующими модулями (сам VirtualBox уже установлен).
sudo apt-get update
sudo apt-get install apache2 libapache2-mod-php5
cd /var/www
sudo mkdir vboxphp
cd vboxphp
качаем туда сабж:
sudo wget http://phpvirtualbox.googlecode.com/files/phpvirtualbox-4.1-7.zip
и распаковываем
unzip phpvirtualbox-4.1-7.zip
Теперь настроим конфиги, которыми веб-морда будет пользоваться:
sudo vim /etc/default/virtualbox
VBOXWEB_USER=mik17
VBOXWEB_HOST=172.17.17.101
в данном случае, указаны логин "хозяина" будущих и текущих виртуалок, а также адрес беспроводного интерфейса.
sudo cp /var/www/vboxphp/phpvirtualbox-4.1-7/config.php-example /var/www/vboxphp/phpvirtualbox-4.1-7/config.php
Копируем шаблон конфига и правим его:
sudo vim /var/www/vboxphp/phpvirtualbox-4.1-7/config.php
...
/* Username / Password for system user that runs VirtualBox */
var $username = 'mik17';
var $password = '***';
/* SOAP URL of vboxwebsrv (not phpVirtualBox's URL) */
var $location = 'http://172.17.17.101:18083/';
...
Проверяем статус сервиса Web VirtualBox (vboxweb-service):
sudo /etc/init.d/vboxweb-service status
несмотря на то, что статус сервиса running, в выводе netstat'а нет прослушиваемого порта 18083. В результате при обращении на страницу веб-морды после аутентификации будет выдаваться ошибка о невозможности соединиться с сервисом на этом порту. Причина в том, что беспроводной интерфейс получает сетевые параметры после аутентификации пользователя, так что для открытия порта на прослушивание нужно перезапустить сервис:
sudo /etc/init.d/vboxweb-service stop
sudo /etc/init.d/vboxweb-service start
Проверим порты:
netstat -a | grep LISTEN
tcp 0 0 *:ssh *:* LISTEN
tcp 0 0 localhost:ipp *:* LISTEN
tcp 0 0 mik17-note.local:18083 *:* LISTEN
Теперь, скорее всего веб интерфейс заведется, но может и выдать такую ошибку (это вторые грабли):
- error - "Error logging to vboxwebsrv".
Лечится данный недуг так:
VBoxManage setproperty websrvauthlibrary default
В результате получаем удаленное управление виртуалками на ноуте.
вторник, 7 августа 2012 г.
Разрешение доменных имен в Ubuntu 12.04 Desktop.
На рабочей станции под последней Убунтой после установки обновлений и перезагрузке перестали разрешаться доменные имена - косяк с DNS. В процессе поиска решения, заметил, что эта бага проявилась у достаточно большого количества народа. Часть решения нашел здесь:
http://hardc0l2e.wordpress.com/2012/05/09/ubuntu-12-04-etcresolv-conf-127-0-0-1-implementation-with-dnsmasq/
--
Ubuntu 12.04 /etc/resolv.conf 127.0.0.1 implementation with dnsmasq
Posted by hardc0l2e on May 9, 2012
On the current version of Ubuntu (12.04), you might notice that the current /etc/resolv.conf file always record a nameserver 127.0.0.1 which then resolv dns via dnsmasq, but most of the time after test few things, I found it more problematic. It always disregard my local DNS server, and goes directly to the DNS of my ISP.
If you’re having the same problem like mine, here’s a quickfix:
1. Modify the configuration /etc/NetworkManager/NetworkManager.conf
$> sudo gedit /etc/NetworkManager/NetworkManager.conf
2. Comment the line that contain “dns=dnsmasq“
[main]
...
#dns-masq
3. Then restart the network-manager
$> sudo service network-manager restart
4. Done
--
В моем случае, я дополнительно поправил /etc/network/interfaces (чисто по привычке) и создал файлик:
sudo vim /etc/resolv.conf
nameserver 4.2.2.2
nameserver 8.8.8.8
После рестарта сервиса sudo /etc/init.d/networking restart (да, пишут, что данный формат команд устарел), проблем с разрешением имен уже не возникло. С нетерпением жду следующего обновления, когда снова придется восстанавливать работоспособность напильником и матом.
В общем, после релиза 10.04 убунтовцы реально много косорезят...
http://hardc0l2e.wordpress.com/2012/05/09/ubuntu-12-04-etcresolv-conf-127-0-0-1-implementation-with-dnsmasq/
--
Ubuntu 12.04 /etc/resolv.conf 127.0.0.1 implementation with dnsmasq
Posted by hardc0l2e on May 9, 2012
On the current version of Ubuntu (12.04), you might notice that the current /etc/resolv.conf file always record a nameserver 127.0.0.1 which then resolv dns via dnsmasq, but most of the time after test few things, I found it more problematic. It always disregard my local DNS server, and goes directly to the DNS of my ISP.
If you’re having the same problem like mine, here’s a quickfix:
1. Modify the configuration /etc/NetworkManager/NetworkManager.conf
$> sudo gedit /etc/NetworkManager/NetworkManager.conf
2. Comment the line that contain “dns=dnsmasq“
[main]
...
#dns-masq
3. Then restart the network-manager
$> sudo service network-manager restart
4. Done
--
В моем случае, я дополнительно поправил /etc/network/interfaces (чисто по привычке) и создал файлик:
sudo vim /etc/resolv.conf
nameserver 4.2.2.2
nameserver 8.8.8.8
После рестарта сервиса sudo /etc/init.d/networking restart (да, пишут, что данный формат команд устарел), проблем с разрешением имен уже не возникло. С нетерпением жду следующего обновления, когда снова придется восстанавливать работоспособность напильником и матом.
В общем, после релиза 10.04 убунтовцы реально много косорезят...
четверг, 2 августа 2012 г.
Соответствие команд настройки Cisco - Vyatta.
Взято отсюда: http://www.openmaniak.com/vyatta_compare.php
Собственно, содержимое:
Собственно, содержимое:
Here is a non-exhaustive list of some Vyatta commands compared to Cisco commands.
Vyatta Version used: VC2
Vyatta Version used: VC2
ping
traceroute show arp show ip ospf neighbor show ip ospf database show ip route show ip route | include show ip interfaces show ip bgp neighbors show ip bgp show clock show ntp associations show ip dhcp binding show ip dhcp server statistics show vrrp all show ip nat translations show ip nat statistics |
ping
traceroute show arp show ospf4 neighbor show ospf4 database show route show route | match ... show interfaces ethernet ... physical show interfaces ethernet ... statistics show bgp peers show bgp routes show host date show ntp associations show dhcp lease show dhcp statistics show vrrp show nat rules show nat statistics |
----- VYATTA CONFIGURATION MODE COMMANDS ----- |
|
SAVE | |
copy run tftp N/A |
save tftp://ip/name
save /mnt/floppy/config/config.boot |
SHOW | |
show | show running-config |
HELP | |
N/A | help |
SET SERVICE | |
ip server http line vty 0 4 password crypto key generate rsa (only on some IOS versions) |
set service http set service telnet set service ssh |
ip dhcp pool network default-router ip dhcp excluded-address |
set service dhcp-server name edit service dhcp-server name set start ... stop set default-router set network-mask set interface set exclude |
SET SYSTEM |
ip domain-name
ip default-gateway
hostname
username � password
ntp server
ip name-server
terminal monitor
clock timezone
set system domain-name
set system gateway-address
set system host-name
set system login
set system ntp-server
set system name-server
set system syslog console
set system time-zone
logging
logging facility
logging trap
set system syslog host
set system syslog host ... facility
set system syslog host ... facility ... level
SET PROTOCOLS ...
INTERFACES
interface
set description
ip address
duplex
speed
vrrp ... ip
vrrp ... priority
edit interfaces
set description
set address ... prefix-length
set duplex
set speed
set vrrp vrrp-group
set vrrp ... virtual-address
set vrrp priority
OSPF
router ospf 1
router-id
network ... area
area ... stub|nssa
set protocols ospf4
edit protocols ospf4
set router-id
set area ... interface eth1 address
set area ...area-type stub|nssa
STATIC
ip route
set protocols static route ...next-hop ...
BGP
router bgp
bgp router-id
neighbor ... remote-as
set protocols bgp
edit protocols bgp
set bgp-ig
set local-as
set peer ...next-hop
set peer ... local-ip
set peer ... as
SNMP
snmp-server community ... ro|rw
snmp-server community ... ACL
snmp-server location
snmp-server contact
set protocols snmp community ... authorization ro|rw
set protocols snmp community ... client
set protocols snmp location
set protocols snmp contact
вторник, 24 июля 2012 г.
Ubuntu после аварийной перезагрузки GRUB без таймаута.
В версии 12.4 столкнулся с ситуацией, что если сервер перезагрузился в аварийном режиме, то загрузка стопорится на меню GRUB'а с ручным выбором ОС, что при отсутствии прямого доступа к железке, считаю недопустимым (висеть эта хрень может в меню бесконечно, пока на клавиатурке Enter не нажать).
Так что пришлось убирать "он-фейл" проверку:
sudo vim /etc/grub.d/00_header
комментируем условие (ближе к концу файла)
#if [ "\${recordfail}" = 1 ]; then
# set timeout=-1
#else
# set timeout=${2}
#fi
апдейтим GRUB
sudo update-grub2
и можно проверить настройку, передернув шнурочки сервака...))
Так что пришлось убирать "он-фейл" проверку:
sudo vim /etc/grub.d/00_header
комментируем условие (ближе к концу файла)
#if [ "\${recordfail}" = 1 ]; then
# set timeout=-1
#else
# set timeout=${2}
#fi
апдейтим GRUB
sudo update-grub2
и можно проверить настройку, передернув шнурочки сервака...))
пятница, 18 мая 2012 г.
Скриптовая замена fail2ban для Mikrotik.
Взято отсюда: http://wiki.mikrotik.com/wiki/Bruteforce_login_prevention_(FTP_%26_SSH)
ip firewall filter
add chain=input protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop \
comment="drop ssh brute forcers" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new \
src-address-list=ssh_stage3 action=add-src-to-address-list address-list=ssh_blacklist \
address-list-timeout=1h comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new \
src-address-list=ssh_stage2 action=add-src-to-address-list address-list=ssh_stage3 \
address-list-timeout=20s comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage1 \
action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=20s comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new action=add-src-to-address-list \
address-list=ssh_stage1 address-list-timeout=20s comment="" disabled=no
Динамически банит IP на 1 час
ip firewall filter
add chain=input protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop \
comment="drop ssh brute forcers" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new \
src-address-list=ssh_stage3 action=add-src-to-address-list address-list=ssh_blacklist \
address-list-timeout=1h comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new \
src-address-list=ssh_stage2 action=add-src-to-address-list address-list=ssh_stage3 \
address-list-timeout=20s comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage1 \
action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=20s comment="" disabled=no
add chain=input protocol=tcp dst-port=22 connection-state=new action=add-src-to-address-list \
address-list=ssh_stage1 address-list-timeout=20s comment="" disabled=no
Динамически банит IP на 1 час
Сброс к заводским настройкам Mikrotik (RB751).
Взято отсюда: http://sysadminblog.ru/mikrotik/2011/08/18/kak-sbrosit-nastroyki-mikrotik-750rb.html
нужно на выключенном Mikrotik удерживать reset, потом включить питание и продолжать удерживать reset пока не замигает act.
нужно на выключенном Mikrotik удерживать reset, потом включить питание и продолжать удерживать reset пока не замигает act.
воскресенье, 22 апреля 2012 г.
Прошивка BIOS из Ubuntu (утилита flashrom)
Основной порядок действий взят отсюда: http://kubuntu.ru/node/3257
Предварительно получаем информацию о "железной" части материнки:
sudo biosdecode
sudo apt-get install hwinfo
sudo hwinfo --bios | less
sudo dmidecode --type bios
sudo lshw
Сохраняем настройки BIOS - они хранятся в NVRAM:
sudo modprobe nvram
sudo dd if=/dev/nvram of=/home/путь_к_каталогу_сохранения/BIOS_GA-MA78G-DS3H/bios_cfg.bin
Собираем или устанавливаем из репозитория flashrom.
Запускаем его для сбора информации о материнке:
sudo flashrom
Скачиваем с официального сайта обновленные прошивки (там exe файлы, но это просто архивы). В моем случае непосредственно файл прошивки назывался MA78GD3H.F8
Бэкапим старую прошивку:
sudo flashrom -r /home/путь_к_каталогу_сохранения/BIOS_GA-MA78G-DS3H/2012-04-16-1-oldBIOS.bin -c SST25VF080B
(-c SST25VF080B - код чипа, полученный при сборе информации flashrom'ом).
Записываем новый код BIOS:
sudo flashrom -Vw MA78GD3H.F8
После перезагрузки смотрим, все ли в порядке...
Предварительно получаем информацию о "железной" части материнки:
sudo biosdecode
sudo apt-get install hwinfo
sudo hwinfo --bios | less
sudo dmidecode --type bios
sudo lshw
Сохраняем настройки BIOS - они хранятся в NVRAM:
sudo modprobe nvram
sudo dd if=/dev/nvram of=/home/путь_к_каталогу_сохранения/BIOS_GA-MA78G-DS3H/bios_cfg.bin
Собираем или устанавливаем из репозитория flashrom.
Запускаем его для сбора информации о материнке:
sudo flashrom
Скачиваем с официального сайта обновленные прошивки (там exe файлы, но это просто архивы). В моем случае непосредственно файл прошивки назывался MA78GD3H.F8
Бэкапим старую прошивку:
sudo flashrom -r /home/путь_к_каталогу_сохранения/BIOS_GA-MA78G-DS3H/2012-04-16-1-oldBIOS.bin -c SST25VF080B
(-c SST25VF080B - код чипа, полученный при сборе информации flashrom'ом).
Записываем новый код BIOS:
sudo flashrom -Vw MA78GD3H.F8
После перезагрузки смотрим, все ли в порядке...
пятница, 30 марта 2012 г.
Подключение машин Virtual Box к виртуальному свичу VDE
После установки свича в систему (Ubuntu)
sudo apt-get install vde2
создаем конфигурационный файл для портов на свиче, например, такой:
vim vde_switch1.cfg
port/create 1
port/create 2
port/create 3
port/create 4
port/create 5
port/create 6
vlan/create 2
vlan/create 3
port/setvlan 1 2
port/setvlan 2 2
port/setvlan 3 2
port/setvlan 4 2
port/setvlan 5 3
port/setvlan 6 3
здесь создаются 6 портов, 2 VLAN'а и эти порты раскидыватся 4 порта на 2й ВЛАН и 2 порта на 3й
порты не тегированные (в терминах cisco - это switchport access vlan 2 ... vlan 3 порты).
Свич можно запустить, например, такой командой (не требует спец прав):
vde_switch -s /tmp/switch1 -f /home/mik17/VDE/vde_switch1.cfg
указанные в файле команды можно вводить в консоли свича (приглашение vde$)
На сетевых интерфейсах виртуальных машин Virtual Box настраиваем:
Attached to: Generic Driver
Name: VDE
Advanced
...
Generic Properties: network=/tmp/switch1[1]
где network=/tmp/switch1 путь к запущенному VDE свичу, а [1] - номер порта
!ВАЖНО! Перед стартом виртуальных машин необходимо создать ссылку на библиотеку подключения VDE, иначе будет выведена примерно такая ошибка:
rtldrNativeLoad: dlopen('libvdeplug.so', RTLD_NOW | RTLD_LOCAL) failed: libvdeplug.so: cannot open shared object file: No such file or directory
Исправляется так:
sudo ln -sf /usr/lib/libvdeplug.so.2 /usr/lib/libvdeplug.so
sudo apt-get install vde2
создаем конфигурационный файл для портов на свиче, например, такой:
vim vde_switch1.cfg
port/create 1
port/create 2
port/create 3
port/create 4
port/create 5
port/create 6
vlan/create 2
vlan/create 3
port/setvlan 1 2
port/setvlan 2 2
port/setvlan 3 2
port/setvlan 4 2
port/setvlan 5 3
port/setvlan 6 3
здесь создаются 6 портов, 2 VLAN'а и эти порты раскидыватся 4 порта на 2й ВЛАН и 2 порта на 3й
порты не тегированные (в терминах cisco - это switchport access vlan 2 ... vlan 3 порты).
Свич можно запустить, например, такой командой (не требует спец прав):
vde_switch -s /tmp/switch1 -f /home/mik17/VDE/vde_switch1.cfg
указанные в файле команды можно вводить в консоли свича (приглашение vde$)
На сетевых интерфейсах виртуальных машин Virtual Box настраиваем:
Attached to: Generic Driver
Name: VDE
Advanced
...
Generic Properties: network=/tmp/switch1[1]
где network=/tmp/switch1 путь к запущенному VDE свичу, а [1] - номер порта
!ВАЖНО! Перед стартом виртуальных машин необходимо создать ссылку на библиотеку подключения VDE, иначе будет выведена примерно такая ошибка:
rtldrNativeLoad: dlopen('libvdeplug.so', RTLD_NOW | RTLD_LOCAL) failed: libvdeplug.so: cannot open shared object file: No such file or directory
Исправляется так:
sudo ln -sf /usr/lib/libvdeplug.so.2 /usr/lib/libvdeplug.so
четверг, 29 марта 2012 г.
TinyCore SSH сервер
Устанавливаем из консоли штатной утилитой OpenSSH сервер:
ab openssh
в выборе (у меня он был единственный) указываем номер нужного пакета (1)
будет выведена информация о пакете (версия, описание и пр.), выходим из этого экрана - q
Предложение на установку - i
пакет будет скачан с настроенного зеркала, зависимости разрешаются автоматически.
После окончания установки снова попадем на приглашение к установке - из него выходим - q
Проверяем, что демон попадает в автозагрузку
cat /mnt/sda1/tce/onboot.lst (должна быть запись openssh.tcz)
Копируем из примера конфигурационный файл
sudo cp /usr/local/etc/ssh/sshd_config.example /usr/local/etc/ssh/sshd_config
Стартуем сервис, при этом будут сгенерированны ключи
sudo /usr/local/etc/init.d/openssh start
Чтобы при перезагрузке не затирались наши правки, добавим каталог с настройками SSH в файл
/opt/.filetool.lst
строка - /usr/local/etc/ssh
Для запуска сервиса при старте системы добавляем запись в
/opt/bootlocal.sh
строка - /usr/local/etc/init.d/openssh start
Бэкапим всю конфиграцию (для сохранения изменений при перезагрузке)
/usr/bin/filetool.sh -b
ab openssh
в выборе (у меня он был единственный) указываем номер нужного пакета (1)
будет выведена информация о пакете (версия, описание и пр.), выходим из этого экрана - q
Предложение на установку - i
пакет будет скачан с настроенного зеркала, зависимости разрешаются автоматически.
После окончания установки снова попадем на приглашение к установке - из него выходим - q
Проверяем, что демон попадает в автозагрузку
cat /mnt/sda1/tce/onboot.lst (должна быть запись openssh.tcz)
Копируем из примера конфигурационный файл
sudo cp /usr/local/etc/ssh/sshd_config.example /usr/local/etc/ssh/sshd_config
Стартуем сервис, при этом будут сгенерированны ключи
sudo /usr/local/etc/init.d/openssh start
Чтобы при перезагрузке не затирались наши правки, добавим каталог с настройками SSH в файл
/opt/.filetool.lst
строка - /usr/local/etc/ssh
Для запуска сервиса при старте системы добавляем запись в
/opt/bootlocal.sh
строка - /usr/local/etc/init.d/openssh start
Бэкапим всю конфиграцию (для сохранения изменений при перезагрузке)
/usr/bin/filetool.sh -b
TinyCore добавление пользователей (sudoers)
Для добавления пользователей необходимо защитить от изменений файлы каталога /etc
в файл /opt/.filetool.lst добавляем строки
/etc/group
/etc/passwd
/etc/shadow
/etc/sudoers
Добавляем пользователя, которому позднее будут предоставлены права sudoer'а
sudo adduser -h /home/mik17 mik17
указываем для него пароль
Создадим пользователя, например, для запуска сервисов quagga
sudo adduser -D -H -s /bin/sh quagga
-D - не задается пароль
-H - не создается домашний каталог
-s - задается командная оболочка (login shell)
Наделяем пользователя mik17 большими правами
sudo visudo
добавляем строки
mik17 ALL=(ALL) ALL
сохраняем (стандартно для vi- Esc :wq)
Не забываем бэкапить все сделанные изменения
/usr/bin/filetool.sh -b
в файл /opt/.filetool.lst добавляем строки
/etc/group
/etc/passwd
/etc/shadow
/etc/sudoers
Добавляем пользователя, которому позднее будут предоставлены права sudoer'а
sudo adduser -h /home/mik17 mik17
указываем для него пароль
Создадим пользователя, например, для запуска сервисов quagga
sudo adduser -D -H -s /bin/sh quagga
-D - не задается пароль
-H - не создается домашний каталог
-s - задается командная оболочка (login shell)
Наделяем пользователя mik17 большими правами
sudo visudo
добавляем строки
mik17 ALL=(ALL) ALL
сохраняем (стандартно для vi- Esc :wq)
Не забываем бэкапить все сделанные изменения
/usr/bin/filetool.sh -b
Удаление SSH сигнатуры (отпечатка) при строгой настройке проверки подлинности сесии.
При смене ключей или при миграциях сервисов, когда на адрес с имеющейся сигнатурой переезжает другой сервак с SSH доступом, возможно такое сообщение от клиента:
**:~$ ssh IP
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
***
Please contact your system administrator.
Add correct host key in */.ssh/known_hosts to get rid of this message.
Offending key in */.ssh/known_hosts:10
RSA host key for IP has changed and you have requested strict checking.
Host key verification failed.
Так как мы точно уверены, что никакой MITM атаки нет, нужно затереть ненужную строку (некоторые советуют вообще удалить файл known_hosts, но это не тот метод...).
Для удаления строки (в данном случае, это 10я запись в файле - */.ssh/known_hosts:10) достаточно:
sed -i "10 d" ~/.known_hosts
Позже при первом удачном входе, нужная сигнатура будет добавлена.
**:~$ ssh IP
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
***
Please contact your system administrator.
Add correct host key in */.ssh/known_hosts to get rid of this message.
Offending key in */.ssh/known_hosts:10
RSA host key for IP has changed and you have requested strict checking.
Host key verification failed.
Так как мы точно уверены, что никакой MITM атаки нет, нужно затереть ненужную строку (некоторые советуют вообще удалить файл known_hosts, но это не тот метод...).
Для удаления строки (в данном случае, это 10я запись в файле - */.ssh/known_hosts:10) достаточно:
sed -i "10 d" ~/.known_hosts
Позже при первом удачном входе, нужная сигнатура будет добавлена.
суббота, 17 марта 2012 г.
Самые базовые настройки Cisco CSS (11500).
В сети опубликовано достаточно много статей по настройке балансировщиков (контент свичей) Cisco серии 11500, однако практически все они относятся не к базовой настройке (менеждмент интерфейса). В принципе, ниже будет памятка для ленивых (типа меня), кто избегает RTFM'а.
Параметры доступа на консоль стандартные для Cisco - 9600N8N1 (Speed (baud) = 9600, Data bits = 8, Stop bits = 1, Parity = None, Flow control = None)
Заводские логин и пароль:
username admin
password system
для смены логина admin
conf t
username-offdm новый_логин password новый_пароль
для смены сетевых параметров менеджмент интерфейса:
conf t
boot
ip addr новый_адрес
subnet mask маска_сети
gateway address адрес_шлюза (ГРАБЛИ! как показала практика, эта настройка работает странно - просто не работает, лучше для доступа к менеджмент интерфейсу указывать статические маршруты для заранее известных подсетей)
ip management route подсеть /префикс шлюз (например, ip management route 172.27.59.0 /24 172.27.56.86)
Далее можно добавить параметры времени (отображаются в running-config):
- из раздела глобальной конфигурации настраивается временная зона clock timezone MSD hour 4 after-UTC (MSD – Moscow Daylight Timezone), что соответствует зоне UTC+4 часа,
- также отключается переход на летнее/зимнее время no clock summer-time
Сохранение настроек: wr mem
Просмотр настроек:
sh boot
sh clock
sh run (куда ж без него...).
Параметры доступа на консоль стандартные для Cisco - 9600N8N1 (Speed (baud) = 9600, Data bits = 8, Stop bits = 1, Parity = None, Flow control = None)
Заводские логин и пароль:
username admin
password system
для смены логина admin
conf t
username-offdm новый_логин password новый_пароль
для смены сетевых параметров менеджмент интерфейса:
conf t
boot
ip addr новый_адрес
subnet mask маска_сети
gateway address адрес_шлюза (ГРАБЛИ! как показала практика, эта настройка работает странно - просто не работает, лучше для доступа к менеджмент интерфейсу указывать статические маршруты для заранее известных подсетей)
ip management route подсеть /префикс шлюз (например, ip management route 172.27.59.0 /24 172.27.56.86)
Далее можно добавить параметры времени (отображаются в running-config):
- из раздела глобальной конфигурации настраивается временная зона clock timezone MSD hour 4 after-UTC (MSD – Moscow Daylight Timezone), что соответствует зоне UTC+4 часа,
- также отключается переход на летнее/зимнее время no clock summer-time
Сохранение настроек: wr mem
Просмотр настроек:
sh boot
sh clock
sh run (куда ж без него...).
четверг, 8 марта 2012 г.
Guru Plug Server Plus (GPS+) восстановление (unbrick) и заливка Debian'а
В процессе игр с сабжем были использованы материалы по ссылкам:
http://bzed.de/posts/2010/05/installing_debian_on_the_guruplug_server_plus/
http://www.cyrius.com/debian/kirkwood/sheevaplug/install.html
http://plugcomputer.org/plugforum/index.php?topic=1648
http://www.newit.co.uk/forum/index.php/topic,410.0.html
Для подключения к консоли использовался "родной" JTAG адаптер.
После подключения интерфейсов и включения GPS+ есть 3 секунды для остановки загрузки и попадания в uBoot. То есть перед включением сервака проверяем, на какой интерфейс сел адаптер:
dmesg | grep tty
в моем случае он приземлился на ttyUSB0
screen /dev/ttyUSB0 115200
(не забываем, что выйти из сессии можно по комбинации Ctrl+a нажать k, потом согласиться с выходом - y).
Запускаем screen и включаем сервак, жмем любой баттон для входа в загрузчик (для этого всего 3 секунды!).
При успехе, попадаем в строку приглашения: Marvell>>
сразу просматриваем переменные окружения и версию загрузчика:
>> version
U-Boot 2009.11-rc1-00602-g28a9c08-dirty (Feb 09 2010 - 18:15:21)
>> printenv
bootcmd=setenv ethact egiga0; ${x_bootcmd_ethernet}; setenv ethact egiga1; ${x_bootcmd_ethernet}; ${x_bootcmd_usb}; ${x_bootcmd_kernel}; setenv bootargs ${x_bootargs} ${x_bootargs_root}; bootm 0x6400000;
bootdelay=3
baudrate=115200
x_bootcmd_ethernet=ping 192.168.2.1
x_bootcmd_usb=usb start
x_bootcmd_kernel=nand read.e 0x6400000 0x100000 0x400000
x_bootargs=console=ttyS0,115200
x_bootargs_root=ubi.mtd=2 root=ubi0:rootfs rootfstype=ubifs
ethact=egiga0
ethaddr=***
eth1addr=***
stdin=serial
stdout=serial
stderr=serial
Environment size: 549/131068 bytes
по команде help выводятся доступные команды. В "моей" версии загрузчика не было части нужных команд, например, работы с устройствами с файловыми системами ext2-3-4. Так что загрузчик нужно обновить. Сделать это можно несколькими способами, в частности, с USB носителя (в FAT) или по сети с TFTP сервера.
Бинарник загрузчика использованный мной:
http://people.debian.org/~tbm/u-boot/2011.12-2/guruplug/u-boot.kwb
Выбор пал на сетевую загрузку, для чего были добавлены настройки:
setenv bootdelay 10
setenv ipaddr 172.17.18.248
setenv serverip 172.17.18.247
saveenv
tftpboot 0x0800000 u-boot.kwb
nand erase 0x0 0x60000
nand write 0x0800000 0x0 0x60000
reset
В результате получен девайс в новой версией загрузчика:
U-Boot 2011.12 (Jan 08 2012 - 21:46:50)
Теперь необходимо загрузить uImage и uInitrd, чтобы позднее начать сетевую загрузку и установку самой ОС. Это также можно сделать по сети (через TFTP) или с носителя.
Для разнообразия попробовал разобраться с носителем: в GPS+ есть слот для карт microSD, вот такую карточку на 8Гб и использовал (на нее же позднее ставится ОС).
Карта отформатирована в ext4 (через GParted).
!Помнить! После создания раздела и форматирования владельцем карты становится root, так что для возможности записи данных на карту нужно сменить владельца:
sudo chown mik17 /media/guruplug/
Нужные файлы доступны по ссылкам:
ftp://ftp.debian.org/debian/dists/stable/main/installer-armel/current/images/kirkwood/netboot/marvell/sheevaplug/uImage
и
ftp://ftp.debian.org/debian/dists/stable/main/installer-armel/current/images/kirkwood/netboot/marvell/sheevaplug/uInitrd
Записываем их в корень карточки и саму карту вставляем в GPS+.
На всякий случай повторно включаем поддержку USB устройств (заодно будет выполнен и поиск носителей):
>> usb start
(Re)start USB...
USB: Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 3 USB Device(s) found
scanning bus for storage devices... Device NOT ready
Request Sense returned 02 3A 00
2 Storage Device(s) found
определяем, какой девайс - наша карта:
>> usb storage
Device 0: Vendor: Generic Rev: 9909 Prod: STORAGE DEVICE
Type: Removable Hard Disk
Capacity: not available
Device 1: Vendor: Generic Rev: 9909 Prod: STORAGE DEVICE
Type: Removable Hard Disk
Capacity: 7384.0 MB = 7.2 GB (15122432 x 512)
нас интересует Device 1, точнее его первый раздел.
Загружаем файлы с карточки:
>> ext2load usb 1:1 0x00800000 /uImage
Loading file "/uImage" from usb device 1:1 (usbdb1)
1435184 bytes read
>> ext2load usb 1:1 0x01100000 /uInitrd
Loading file "/uInitrd" from usb device 1:1 (usbdb1)
3172565 bytes read
Теперь добавляем в переменные окружения загрузку с карты памяти:
setenv bootargs_console console=ttyS0,115200
setenv bootcmd_usb 'usb start; ext2load usb 1:1 0x00800000 /uImage; ext2load usb 1:1 0x01100000 /uInitrd'
setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_usb; bootm 0x00800000 0x01100000'
saveenv
setenv bootargs console=ttyS0,115200n8 base-installer/initramfs-tools/driver-policy=most
Начинаем процесс установки !Важно! необходимо точно убедиться, что с сетевыми настройками нет проблем, так как сабж тянет установочные файлы из Инета.
bootm 0x00800000 0x01100000
В процессе установки задаются стандартные вопросы.
После установки "внезапно" выяснится, что имеющийся беспроводной интерфейс не видится, а в логах примерно такие сообщения:
can't load helper firmware
failed to load helper firmware
Для решения этой проблемы нужно загрузить файлы sd8688.bin и sd8688_helper.bin в /lib/firmware
Взять эти файлы можно по ссылкам:
http://git.infradead.org/users/dwmw2/linux-firmware.git/blob/8ad78631586495ca5738c78884c14bfaf29f633e:/libertas/sd8688.bin
и
http://git.infradead.org/users/dwmw2/linux-firmware.git/blob/8ad78631586495ca5738c78884c14bfaf29f633e:/libertas/sd8688_helper.bin
После перезагрузки беспроводной интерфейс появится.
http://bzed.de/posts/2010/05/installing_debian_on_the_guruplug_server_plus/
http://www.cyrius.com/debian/kirkwood/sheevaplug/install.html
http://plugcomputer.org/plugforum/index.php?topic=1648
http://www.newit.co.uk/forum/index.php/topic,410.0.html
Для подключения к консоли использовался "родной" JTAG адаптер.
После подключения интерфейсов и включения GPS+ есть 3 секунды для остановки загрузки и попадания в uBoot. То есть перед включением сервака проверяем, на какой интерфейс сел адаптер:
dmesg | grep tty
в моем случае он приземлился на ttyUSB0
screen /dev/ttyUSB0 115200
(не забываем, что выйти из сессии можно по комбинации Ctrl+a нажать k, потом согласиться с выходом - y).
Запускаем screen и включаем сервак, жмем любой баттон для входа в загрузчик (для этого всего 3 секунды!).
При успехе, попадаем в строку приглашения: Marvell>>
сразу просматриваем переменные окружения и версию загрузчика:
>> version
U-Boot 2009.11-rc1-00602-g28a9c08-dirty (Feb 09 2010 - 18:15:21)
>> printenv
bootcmd=setenv ethact egiga0; ${x_bootcmd_ethernet}; setenv ethact egiga1; ${x_bootcmd_ethernet}; ${x_bootcmd_usb}; ${x_bootcmd_kernel}; setenv bootargs ${x_bootargs} ${x_bootargs_root}; bootm 0x6400000;
bootdelay=3
baudrate=115200
x_bootcmd_ethernet=ping 192.168.2.1
x_bootcmd_usb=usb start
x_bootcmd_kernel=nand read.e 0x6400000 0x100000 0x400000
x_bootargs=console=ttyS0,115200
x_bootargs_root=ubi.mtd=2 root=ubi0:rootfs rootfstype=ubifs
ethact=egiga0
ethaddr=***
eth1addr=***
stdin=serial
stdout=serial
stderr=serial
Environment size: 549/131068 bytes
по команде help выводятся доступные команды. В "моей" версии загрузчика не было части нужных команд, например, работы с устройствами с файловыми системами ext2-3-4. Так что загрузчик нужно обновить. Сделать это можно несколькими способами, в частности, с USB носителя (в FAT) или по сети с TFTP сервера.
Бинарник загрузчика использованный мной:
http://people.debian.org/~tbm/u-boot/2011.12-2/guruplug/u-boot.kwb
Выбор пал на сетевую загрузку, для чего были добавлены настройки:
setenv bootdelay 10
setenv ipaddr 172.17.18.248
setenv serverip 172.17.18.247
saveenv
tftpboot 0x0800000 u-boot.kwb
nand erase 0x0 0x60000
nand write 0x0800000 0x0 0x60000
reset
В результате получен девайс в новой версией загрузчика:
U-Boot 2011.12 (Jan 08 2012 - 21:46:50)
Теперь необходимо загрузить uImage и uInitrd, чтобы позднее начать сетевую загрузку и установку самой ОС. Это также можно сделать по сети (через TFTP) или с носителя.
Для разнообразия попробовал разобраться с носителем: в GPS+ есть слот для карт microSD, вот такую карточку на 8Гб и использовал (на нее же позднее ставится ОС).
Карта отформатирована в ext4 (через GParted).
!Помнить! После создания раздела и форматирования владельцем карты становится root, так что для возможности записи данных на карту нужно сменить владельца:
sudo chown mik17 /media/guruplug/
Нужные файлы доступны по ссылкам:
ftp://ftp.debian.org/debian/dists/stable/main/installer-armel/current/images/kirkwood/netboot/marvell/sheevaplug/uImage
и
ftp://ftp.debian.org/debian/dists/stable/main/installer-armel/current/images/kirkwood/netboot/marvell/sheevaplug/uInitrd
Записываем их в корень карточки и саму карту вставляем в GPS+.
На всякий случай повторно включаем поддержку USB устройств (заодно будет выполнен и поиск носителей):
>> usb start
(Re)start USB...
USB: Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 3 USB Device(s) found
scanning bus for storage devices... Device NOT ready
Request Sense returned 02 3A 00
2 Storage Device(s) found
определяем, какой девайс - наша карта:
>> usb storage
Device 0: Vendor: Generic Rev: 9909 Prod: STORAGE DEVICE
Type: Removable Hard Disk
Capacity: not available
Device 1: Vendor: Generic Rev: 9909 Prod: STORAGE DEVICE
Type: Removable Hard Disk
Capacity: 7384.0 MB = 7.2 GB (15122432 x 512)
нас интересует Device 1, точнее его первый раздел.
Загружаем файлы с карточки:
>> ext2load usb 1:1 0x00800000 /uImage
Loading file "/uImage" from usb device 1:1 (usbdb1)
1435184 bytes read
>> ext2load usb 1:1 0x01100000 /uInitrd
Loading file "/uInitrd" from usb device 1:1 (usbdb1)
3172565 bytes read
Теперь добавляем в переменные окружения загрузку с карты памяти:
setenv bootargs_console console=ttyS0,115200
setenv bootcmd_usb 'usb start; ext2load usb 1:1 0x00800000 /uImage; ext2load usb 1:1 0x01100000 /uInitrd'
setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_usb; bootm 0x00800000 0x01100000'
saveenv
setenv bootargs console=ttyS0,115200n8 base-installer/initramfs-tools/driver-policy=most
Начинаем процесс установки !Важно! необходимо точно убедиться, что с сетевыми настройками нет проблем, так как сабж тянет установочные файлы из Инета.
bootm 0x00800000 0x01100000
В процессе установки задаются стандартные вопросы.
После установки "внезапно" выяснится, что имеющийся беспроводной интерфейс не видится, а в логах примерно такие сообщения:
can't load helper firmware
failed to load helper firmware
Для решения этой проблемы нужно загрузить файлы sd8688.bin и sd8688_helper.bin в /lib/firmware
Взять эти файлы можно по ссылкам:
http://git.infradead.org/users/dwmw2/linux-firmware.git/blob/8ad78631586495ca5738c78884c14bfaf29f633e:/libertas/sd8688.bin
и
http://git.infradead.org/users/dwmw2/linux-firmware.git/blob/8ad78631586495ca5738c78884c14bfaf29f633e:/libertas/sd8688_helper.bin
После перезагрузки беспроводной интерфейс появится.
четверг, 1 марта 2012 г.
TFTP сервер для Ubuntu (который можно вкл/выкл)
Для скачивания конфигов или заливки прошивок на сетевые девайсы полезно всегда иметь на разъездном буке ряд сервисов, в частности, TFTP сервер, но такой, чтобы он не весел постоянно запущенным (как atftpd). Для Windows очень долгое время я пользовался 3com_TFTP-Syslog-FTP-server'ом (как видно из названия, там же еще и FTP и Syslog). Долго искал аналогичную примочку по Линуха.
Понравился такой сервачок: http://code.google.com/p/tftpgui/ от Гугла, основанный на Python'е.
После скачивания и распаковки, на рабочем столе по правой кнопке мыши делаем Create Launcher / Type="Application in Terminal" / Name="TFTP_Server" / Command="sudo /~/Progs/tftpgui/tftpgui.py"
Конечно же в поле команды нужно будет указать путь распакованному файлу tftpgui.py (без кавычек).
Понравился такой сервачок: http://code.google.com/p/tftpgui/ от Гугла, основанный на Python'е.
После скачивания и распаковки, на рабочем столе по правой кнопке мыши делаем Create Launcher / Type="Application in Terminal" / Name="TFTP_Server" / Command="sudo /~/Progs/tftpgui/tftpgui.py"
Конечно же в поле команды нужно будет указать путь распакованному файлу tftpgui.py (без кавычек).
понедельник, 27 февраля 2012 г.
Включение последовательного интерфейса в дистрибутивах на базе Дебиан с init (не upstart!).
В меморизз.
Взято отсюда: http://www.debuntu.org/how-to-set-up-a-serial-console-on-debian
How-To set up a serial console on Debian
This tutorial will go over the steps to go through in order to set up a serial console on Debian Linux.
Debian uses sysvinit to handle the booting process, amongst the different task, and as such, there is a few differences between most of the tutorial that you might find on the internet regarding how to set up a serial console.
A Serial Console becomes handy when running a headless server (i.e no keyboard and screen) or if you cannot connect a a server because of a network issue.
In this tutorial, we will set up a serial console on the server, the machine we want an access to. Setting up a serial console client will be covered in another article.
1. Checking the serial devices
In order to find which devices are available on a box, you can run:
$ dmesg | grep tty
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
00:09: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
00:0a: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
From this output, we can guess that there is 2 serial interface2 (/dev/ttyS0 and /dev/ttyS1). This tutorial considers that you are using device 1 (ttyS0), if you use the second device, you will need to change ttyS0 by ttyS1.
2. Setting up the serial console on the server
On the server, we are going to set up:
A serial console on ttyS0
Have kernel booting messages output to the serial console
Make Grub outputs to the serial console
2.1. The serial console
To set up a serial console, We need to edit the file called /etc/inittab in order to spawn a getty on the serial device. getty will take care of prompting the user for a username and password.
Go and edit /etc/inittab and add:
s0:2345:respawn:/sbin/getty -L 115200 ttyS0 vt102
just below:
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6
Now, run:
# init q
In order to have sysvinit re-read its configuration and spawn a getty on /dev/ttyS0 .
To authorize root to log in through the serial console, you need to edit /etc/securetty and make sure you have:
ttyS0
2.2. Having grub outputting to ttyS0
grub can be configured to output on the serial console.Edit grub and add:
serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
terminal --timeout=10 serial console
In the section before the different kernels. This will take care of having grub being displayed one the serial console so you can actually modify grub through the serial console or boot using another kernel.
If using ttyS1, then change it to --unit=1
Also, in order to get the booting messages outputted to the serial console, you can append to your kernel line the following:
console=ttyS0,115200n8 console=tty0
So, finally, the kernel line will look like:
kernel /boot/vmlinuz-2.6.18-6-686 root=/dev/sda1 ro console=ttyS0,115200n8 console=tty0
That's it, upon next reboot, you will be able to connect directly to your box using a serial console!.
По факту для быстрого включения консоли можно выполнить (работает и в Ubuntu):
sudo getty -L 115200 ttyS0 vt102 &
Взято отсюда: http://www.debuntu.org/how-to-set-up-a-serial-console-on-debian
How-To set up a serial console on Debian
This tutorial will go over the steps to go through in order to set up a serial console on Debian Linux.
Debian uses sysvinit to handle the booting process, amongst the different task, and as such, there is a few differences between most of the tutorial that you might find on the internet regarding how to set up a serial console.
A Serial Console becomes handy when running a headless server (i.e no keyboard and screen) or if you cannot connect a a server because of a network issue.
In this tutorial, we will set up a serial console on the server, the machine we want an access to. Setting up a serial console client will be covered in another article.
1. Checking the serial devices
In order to find which devices are available on a box, you can run:
$ dmesg | grep tty
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
00:09: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
00:0a: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
From this output, we can guess that there is 2 serial interface2 (/dev/ttyS0 and /dev/ttyS1). This tutorial considers that you are using device 1 (ttyS0), if you use the second device, you will need to change ttyS0 by ttyS1.
2. Setting up the serial console on the server
On the server, we are going to set up:
A serial console on ttyS0
Have kernel booting messages output to the serial console
Make Grub outputs to the serial console
2.1. The serial console
To set up a serial console, We need to edit the file called /etc/inittab in order to spawn a getty on the serial device. getty will take care of prompting the user for a username and password.
Go and edit /etc/inittab and add:
s0:2345:respawn:/sbin/getty -L 115200 ttyS0 vt102
just below:
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6
Now, run:
# init q
In order to have sysvinit re-read its configuration and spawn a getty on /dev/ttyS0 .
To authorize root to log in through the serial console, you need to edit /etc/securetty and make sure you have:
ttyS0
2.2. Having grub outputting to ttyS0
grub can be configured to output on the serial console.Edit grub and add:
serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
terminal --timeout=10 serial console
In the section before the different kernels. This will take care of having grub being displayed one the serial console so you can actually modify grub through the serial console or boot using another kernel.
If using ttyS1, then change it to --unit=1
Also, in order to get the booting messages outputted to the serial console, you can append to your kernel line the following:
console=ttyS0,115200n8 console=tty0
So, finally, the kernel line will look like:
kernel /boot/vmlinuz-2.6.18-6-686 root=/dev/sda1 ro console=ttyS0,115200n8 console=tty0
That's it, upon next reboot, you will be able to connect directly to your box using a serial console!.
По факту для быстрого включения консоли можно выполнить (работает и в Ubuntu):
sudo getty -L 115200 ttyS0 vt102 &
пятница, 17 февраля 2012 г.
Cisco ISR архивирование конфига (версионность).
В мемориз!
Взято отсюда:
https://supportforums.cisco.com/videos/2715
#
mkdir CONFIG_ARCHIVE
conf t
archive
path flash:CONFIG_ARCHIVE/RUN_CONFIG
! Путь к каталогу, где будут архивные копии конфигов (к ним автоматом будут добавляться номера)
write-memory
! Добавление конфига в архив происходит при каждом сохранении конфига в старт (wr mem)
maximum 10
! Сохраняется количество версий - 14 - максимально
!Здесь же в настройках есть опции rollback
!rollback retry timeout ?
! <0-1000> Timeout value in seconds
#
dir flash:/CONFIG_ARCHIVE/
more flash:/CONFIG_ARCHIVE/RUN_CONFIG-1
! просмотр сохраненного конфига
archive config
! явное указание бэкапа конфига
show archive
config replace flash:/CONFIG_ARCHIVE/RUN_CONFIG-1
! Процедура rollback'а - отката на указанный вариант конфига
Взято отсюда:
https://supportforums.cisco.com/videos/2715
#
mkdir CONFIG_ARCHIVE
conf t
archive
path flash:CONFIG_ARCHIVE/RUN_CONFIG
! Путь к каталогу, где будут архивные копии конфигов (к ним автоматом будут добавляться номера)
write-memory
! Добавление конфига в архив происходит при каждом сохранении конфига в старт (wr mem)
maximum 10
! Сохраняется количество версий - 14 - максимально
!Здесь же в настройках есть опции rollback
!rollback retry timeout ?
! <0-1000> Timeout value in seconds
#
dir flash:/CONFIG_ARCHIVE/
more flash:/CONFIG_ARCHIVE/RUN_CONFIG-1
! просмотр сохраненного конфига
archive config
! явное указание бэкапа конфига
show archive
config replace flash:/CONFIG_ARCHIVE/RUN_CONFIG-1
! Процедура rollback'а - отката на указанный вариант конфига
вторник, 14 февраля 2012 г.
Передача файлов через консоль (xmodem, ymodem).
Не помню, где взял..., но в меморизз:
Uploading files with xmodem
PuTTy on Windows does not support zmodem, xmodem, etc. so I often used HyperTerminal, but the GUI of Hyperterminal annoys me.
So instead of switching between PuTTy and HyperTerminal all the time, I tried to use a different terminal emulator ‘TeraTerm Pro’. This seems fine, but for some reason it dumps a few random characters on the serial line after the file is transferred, falsely answering the multiple choice menu to decide between runtime, diag, multiple image or loader.
I am now using GNU Screen with lrzsz. It was a little struggle to figure out the correct syntax for this, because Screen has a google-incompatible name. Hopefully I’ve sprinkled enough relevant terms in this post to help somebody else with this issue.
I start screen with ‘screen /dev/ttyUSB0 115200′. Then when I start the Xmodem download on the bootrom side I execute CTRL-A “:exec !! sx -kb firmware.bix” in screen.
This works mostly fine. It eats the multiple choice menu after the transfer, but you can press to view it again. And FYI, the bootrom support Xmodem-1K giving a nice transferboost over regular Xmodem.
---
i have write my doc from youre.
*********************
Attention a etre raccordé sur le bon switch en cas de stack
*********************
screen /dev/ttyUSB0
enable
conf t
line con 0
speed 115200
CTRL A + k
screen /dev/ttyUSB0 115200
exit
exit
copy ymodem: flash:filename.bin
CTRL A puis :exec sz -kb filename.bin
Uploading files with xmodem
PuTTy on Windows does not support zmodem, xmodem, etc. so I often used HyperTerminal, but the GUI of Hyperterminal annoys me.
So instead of switching between PuTTy and HyperTerminal all the time, I tried to use a different terminal emulator ‘TeraTerm Pro’. This seems fine, but for some reason it dumps a few random characters on the serial line after the file is transferred, falsely answering the multiple choice menu to decide between runtime, diag, multiple image or loader.
I am now using GNU Screen with lrzsz. It was a little struggle to figure out the correct syntax for this, because Screen has a google-incompatible name. Hopefully I’ve sprinkled enough relevant terms in this post to help somebody else with this issue.
I start screen with ‘screen /dev/ttyUSB0 115200′. Then when I start the Xmodem download on the bootrom side I execute CTRL-A “:exec !! sx -kb firmware.bix” in screen.
This works mostly fine. It eats the multiple choice menu after the transfer, but you can press
---
i have write my doc from youre.
*********************
Attention a etre raccordé sur le bon switch en cas de stack
*********************
screen /dev/ttyUSB0
enable
conf t
line con 0
speed 115200
CTRL A + k
screen /dev/ttyUSB0 115200
exit
exit
copy ymodem: flash:filename.bin
CTRL A puis :exec sz -kb filename.bin
Маршруты в HP-UX
Взято отсюда: http://www.cyberciti.biz/tips/hp-ux-how-do-i-configure-routing-or-add-route.html
HP-UX: How Do I configure routing or add route?
by LinuxTitli on October 29, 2005
You can use route command to configure routing. Syntax is as follows:
route add net {network-address} netmask {subnet} {router-address}
Let us assume your router address is 192.168.1.254 and network ID is 192.168.1.0/24, then you can type route command as follows:
# route add net 192.168.1.0 netmask 255.255.255.0 192.168.1.254
OR
To add a default route:
# route add default 192.168.1.254
Verify that (display) routing table is updated (display routing table):
# netstat -nr
Test it i.e. try to ping or send nslookup request:
# ping mycorp.com
To flush all routing entries use command [quite handy to clean your gordian knot ;)] :
# route -f
However if I reboot HPUX box then above routing entries gets removed. To pick up your setting upon each reboot your need to configure Routes in HPUX networking configuration file - /etc/rc.config.d/netconf. To add default router/gateway 192.168.1.254:
# vi /etc/rc.config.d/netconf
Add or modify following entries
ROUTE_DESTINATION[0]="default"
ROUTE_MASK[0]=""
ROUTE_GATEWAY[0]="192.168.1.254"
ROUTE_COUNT[0]="1"
ROUTE_ARGS[0]=""
Reboot HP-UX system/server to take effect
# shutdown -ry 0
HP-UX: How Do I configure routing or add route?
by LinuxTitli on October 29, 2005
You can use route command to configure routing. Syntax is as follows:
route add net {network-address} netmask {subnet} {router-address}
Let us assume your router address is 192.168.1.254 and network ID is 192.168.1.0/24, then you can type route command as follows:
# route add net 192.168.1.0 netmask 255.255.255.0 192.168.1.254
OR
To add a default route:
# route add default 192.168.1.254
Verify that (display) routing table is updated (display routing table):
# netstat -nr
Test it i.e. try to ping or send nslookup request:
# ping mycorp.com
To flush all routing entries use command [quite handy to clean your gordian knot ;)] :
# route -f
However if I reboot HPUX box then above routing entries gets removed. To pick up your setting upon each reboot your need to configure Routes in HPUX networking configuration file - /etc/rc.config.d/netconf. To add default router/gateway 192.168.1.254:
# vi /etc/rc.config.d/netconf
Add or modify following entries
ROUTE_DESTINATION[0]="default"
ROUTE_MASK[0]=""
ROUTE_GATEWAY[0]="192.168.1.254"
ROUTE_COUNT[0]="1"
ROUTE_ARGS[0]=""
Reboot HP-UX system/server to take effect
# shutdown -ry 0
Подписаться на:
Сообщения (Atom)