Управление статическими маршрутами

Для управления таблицей статических маршрутов удобно использовать команду route. Если команда отсутствует в системе, нужно установить пакет net-tools. В простейшем случае (без опций и аргументов)

route

выдает список статических маршрутов:

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

local * 255.255.255.0 U 0 0 0 eth1

internal * 255.255.255.0 U 0 0 0 eth0

link-local * 255.255.0.0 U 1002 0 0 eth0

link-local * 255.255.0.0 U 1003 0 0 eth1

default 10.0.2.2 0.0.0.0 UG 0 0 0 eth0

где:

Destination - сеть назначения;

Gateway - шлюз;

Genmask - маска сети;

Flags - флаги маршрутизации:

U – активен;

H – маршрут для IP адреса (если флаг отсутствует – маршрут для сети);

G – маршрут для шлюза сети;

D - установлена ICMP переадресация (Redirect);

M - изменена ICMP переадресация (Redirect);

! - сеть заблокирована,

C - кеш.

Metric - метрика;

Ref – количество зависимых маршрутов;

Use – количество использований (кеш сокетов не учитывается);

Iface – интерфейс назначения.

Для того, чтобы отключить распознавание имен (полезно при настройке сервера, когда система NS еще не до конца настроена) используется опция -n:

route -n

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1

10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0

169.254.0.0 0.0.0.0 255.255.0.0 U 1003 0 0 eth1

0.0.0.0 10.0.2.2 0.0.0.0 UG 0 0 0 eth0

Примечание

Статические маршруты созданные командой route не сохраняются при перезагрузке.

Для добавления маршрута используется команда:

route add [-net|-host] [адрес-сети|default] параметры

для удаления маршрута команда:

route del [-net|-host] [ адрес-сети|default] параметры

Параметры разделяются пробелами и могут принимать значения:

  • netmask- маска сети
  • gw- адрес шлюза (можно указывать IP-адрес локального интерфейса; шлюз к этому моменту д.б. доступен)
  • metric- метрика (используется при определение кратчайшего маршрута)
  • dev- имя-интерфейса (вручную привязать маршрут к интерфейсу; обычно определяется автоматически по списку всех активных интерфейсов)

Пример:

route add default gw 192.168.0.1

Эта команда определяет в качестве маршрута по умолчанию компьютер с IP адресом 192.168.0.1.

Скрипты управления сетевыми интерфейсами

В каталоге /sbin есть два скрипта для управления сетевыми интерфейсами и статическими маршрутами ifup и ifdown

Команда (скрипт):

ifup <ИНТЕРФЕЙС>

предназначена для активации (поднятия) сетевого интерфейса <ИНТЕРФЕЙС>

Команда (скрипт):

ifdown <ИНТЕРФЕЙС>

предназначена для деактивации (опускания) сетевого интерфейса <ИНТЕРФЕЙС>

Для управления сетевыми интерфейсами, перечисленные команды используют скрипты и файлы с параметрами из каталога:

/etc/network/network-scripts

Примечание

Здесь, под активацией и деактивацией понимается не только присвоение параметров сетевым интерфейсам но и соответствующее изменение статических маршрутов.

Пример.

Определяем параметры интерфейса eth1:

ifconfig eth1

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

inet 192.168.2.29 netmask 255.255.255.0 broadcast 192.168.2.255

inet6 fe80::a00:27ff:fe48:14a prefixlen 64 scopeid 0x20<link>

ether 08:00:27:48:01:4a txqueuelen 1000 (Ethernet)

RX packets 293 bytes 32802 (32.0 KiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 314 bytes 26464 (25.8 KiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

и соответствующие ему статические маршруты:

route|grep eth1

192.168.2.0 0.0.0.0 255.255.255.0 U 100 0 0 eth1

Интерфейс eth1 - активен, деактивируем:

ifdown eth1

Device 'eth1' successfully disconnected.

Определяем параметры интерфейса eth1:

ifconfig eth1

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

ether 08:00:27:48:01:4a txqueuelen 1000 (Ethernet)

RX packets 302 bytes 33822 (33.0 KiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 322 bytes 27113 (26.4 KiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Смотрим таблицу статических маршрутов:

route

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

default 10.0.2.2 0.0.0.0 UG 100 0 0 eth0

10.0.2.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0

Вывод: Команда ifdown eth1 очистила параметры интерфейса и удалила соответствующий ему статический маршрут.

Файлы настроек системы распознавания имен (NS)

Файл /etc/host.conf

Файл задает порядок и правила поиска имен компьютеров в сети. Пример файла:

order bind,hosts

multi on

nospoof on

Опция order используется для определения порядка использования сервисов. В примере установлено, что первым делается запрос к DNS серверу, а затем имя ищется в файле /etc/hosts.

Опция multi разрешает использование нескольких IP адресов для одного имени компьютера в файле /etc/hosts.

Опция nospoof запрещает подмену адресов.

Файл /etc/resolv.conf

Файл определяет параметры обращения к DNS серверам сети. Пример файла:

search example.com

nameserver 172.16.27.2

nameserver 192.168.7.100

Опция search задает перечень доменов в которых осуществляется поиск коротких имен компьютеров сети. Домены перечисляются через пробел.

Примечание

Работает это так: Если клиент пытается найти компьютер с именем name, то сначала (в соответствии с приведенным выше примером) ищется компьютер с полным именем name.example.com и только затем с именем name. Если клиент пытается найти name.example.com, то сначала ищется name.example.com.name.example.com (да это глупо, но вот так это работает) и только затем name.example.com.

Предупреждение

Чем больше перечислено доменов в опции search, тем медленее работант система распознавания имен.

Пример предполагает, что вы находитесь в домене subdomain.your-domain.edu, и ваша машина вероятно называется your-machine.subdomain.your-domain.edu. Строка поиска не должна содержать ваш TLD (Top Level Domain (Домен Верхнего Уровня), edu в нашем случае).

Опция nameserver задает IP адрес DNS сервера. Запросы посылаются на сервера имен в порядке их перечисления в файле /etc/resolv.conf.

Файл /etc/hosts

Файл обеспечивает распознавание имен компьютеров при неработающей службе DNS (например во время загрузки компьютера). При отсутствии в сети сервера DNS все программы распознают компьютеры сети с помощью этого файла. Ниже приводится пример файла /etc/hosts:

127.0.0.1 localhost.localdomain localhost

172.16.27.2 lsrv.example.com lsrv

172.16.27.4 wxp.example.com wxp

172.16.27.1 hsrv.example.com hsrv

В левой колонке записывается IP адрес, в средней соответствующее ему полное имя компьютера (FQDN), а в последней короткое имя (alias) компьютера. Например, адресу 172.16.27.1 соответствует имя hsrv.example.com и hsrv.

Примечание

Медленная работа, а иногда и невозможность запуска некоторых программ (особенно в графической среде), часто связана с тем, что компьютер не может определить собственный IP адрес по имени. Для решения этой проблемы рекомендуется добавить как минимум имя и IP адрес самого компьютера в файл /etc/hosts.

Настройка сетевого моста

Технология сетевых мостов позволяет объединять несколько сетевых устройств в одно. Для использования сетевого моста необходимо установить пакет:

yum install bridge-utils

Для создания сетевого моста в каталоге /etc/sysconfig/network-scripts создается файл настроек ifcfg-br0 с общими сетевыми параметрами всех устройств подключаемых к мосту:

DEVICE="br0"

TYPE=Bridge

ONBOOT=yes

BOOTPROTO=none

IPADDR=<IP адрес устройств объединенных в мост>

GATEWAY=<IP адрес шлюза>

и файл настроек для каждого из подключаемых интерфейсов ifcfg-ethX:

DEVICE="ethX"

TYPE=Ethernet

BRIDGE=br0

ONBOOT=yes

BOOTPROTO=none

Изменения вступят в силу после перезапуска сетевой службы:

/etc/init.d/network restart

Наши рекомендации