Флаги netstat
Каждый маршрут отмечен своим флагом. Флаги в выводе netstat обозначают состояние и тип маршрута:
В случае, если в системе активировано несколько сетевых интерфейсов, маршрутизация пакетов между ними по умолчанию разрешена. Если надо отключить это свойство, т.е. запретить маршрутизацию пакетов между интерфейсами, следует создать файл /etc/notrouter. Его существование будет проверяться при запуске системы, и если он существует, передача пакетов между интерфейсами будет выключена. Вы должны помнить, что Solaris обладает повышенной уязвимостью во время запуска, когда машина может перенаправлять пакеты независимо от /etc/notrouter. С другой стороны, это не очень серезная уязвимость: серверы Solaris, равно как и другие серверы приложений, не имеет смысл устанавливать вне корпоративной сети; вне такой сети вряд ли потребуется запрещать маршрут изацию средствами ОС.
Для того чтобы добавить или изменить маршрут пакетов к определенному адресату (компьютеру или сети), надо использовать команду route. Например, если требуется отправлять пакеты в сеть 193.13.13.0/24 (как вы помните, такая запись означает сеть класса C) через интерфейс с адресом 192.168.5.18, то следует дать команду route add:
netstat -rn Routing Table: IPv4 Destination Gateway Flags Ref Use Interface ------------ --------------- ------ ------ ---- --------- 192.168.5.0 192.168.5.33 U 1 5 elxl0 224.0.0.0 192.168.5.33 U 1 0 elxl0 default 192.168.5.1 UG 1 0 127.0.0.1 127.0.0.1 UH 54 5775 lo0 route add net 193.13.13.0 192.168.5.18 add net 193.13.13.0: gateway 192.168.5.18 netstat -rn Routing Table: IPv4 Destination Gateway Flags Ref Use Interface ------------ --------------- ------ ------ ---- --------- 193.13.13.0 192.168.5.18 UG 1 0 192.168.5.0 192.168.5.33 U 1 5 elxl0 224.0.0.0 192.168.5.33 U 1 0 elxl0 default 192.168.5.1 UG 1 0 127.0.0.1 127.0.0.1 UH 54 5905 lo0
Синтаксис команды route:
route [-dnqtv] команда [[модификаторы] аргументы]
-n - сообщать IP- адреса вместо имен компьютеров. Для вывода имени его еще нужно определить по адресу, это занимает время и окажется невозможным при сбое настроек или недоступности сервера имен;
-v - сообщить дополнительные детали;
-q - выполниться без выдачи сообщений.
Команда route также способна выполнять следующие действия в зависимости от содержания внутренних команд, переданных ей в качестве аргументов:
Внутренняя команда monitor имеет смысл для динамически обновляемых маршрутов:
route [-n] monitor
Обычно route вызывается для изменения или добавления маршрута, вот так:
route [-n] команда [-net | -host] куда через_что [netmask]
Для указания всех интерфейсов вообще используется ключевое слово default, синонимом которого является параметр -net 0.0.0.0.
В большинстве случаев ручной модификации таблицы маршрутов не требуется, все строки в таблицу заносятся автоматически на основании стандартных настроек системы ( адресов сетевых интерфейсов , адреса основного шлюза и масок сетей).