Здесь мы рассмотрим, как добавлять маршруты и делать их сохраняющимися при перезагрузках. В общем случае управляет маршрутами команда route, а смотрят маршруты командой netstat -ru, но у каждой операционной системы семейства *nix есть свои тонкости.
[FreeBSD] Маршрутная информация, добавленная командой route add, не сохранится после перезагрузки FreeBSD. К сожалению, опции наподобие -p как в Windows XP здесь нет. Способ сохранения добавленного маршрута заключается в добавлении его в файл /etc/rc.conf. Пример:
# Добавление статического маршрута в Internal Net 2 static_routes="internalnet2" route_internalnet2="-net 192.168.2.0/24 192.168.1.2"
В переменной static_routes находятся строки, разделенные пробелами. Каждая строка означает имя маршрута. В примере выше в static_routes есть только одна строка, это internalnet2. Затем мы добавили переменную route_internalnet2, куда помещены все параметры, которые необходимо передать команде route(8). В примере выше была использована команда:
# route add -net 192.168.2.0/24 192.168.1.2 поэтому нам потребуется "-net 192.168.2.0/24 192.168.1.2".
Как было сказано выше, мы можем добавить в static_routes более чем одну строку. Это позволит создать несколько статических маршрутов. В следующем примере показано добавление маршрутов для сетей 192.168.0.0/24 и 192.168.1.0/24: static_routes="net1 net2" route_net1="-net 192.168.0.0/24 192.168.0.1" route_net2="-net 192.168.1.0/24 192.168.1.1"
Информация взята из книги "Руководство FreeBSD", http://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/network-routing.html
[ASPLinux] Здесь команды на настройку маршрутов можно вставить в скрипт /etc/rc.d/rc.sysinit, либо в /etc/rc.d/rc.local. Пример таких команд: route add -net 0.0.0.0 netmask 0.0.0.0 gw a.b.0.45 route del -net 0.0.0.0 netmask 0.0.0.0 gw a.b.0.254 route add -net a.0.0.0 netmask 255.0.0.0 gw a.b.0.254 route add -net x.y.0.0 netmask 255.255.255.0 gw a.b.0.254 route add -net x.u.10.0 netmask 255.255.255.0 gw a.b.0.254 route add -net x.z.0.0 netmask 255.255.255.0 gw a.b.0.254 route add -net 192.168.10.0 netmask 255.255.255.0 gw a.b.100.81 route add -net 192.168.20.0 netmask 255.255.255.0 gw a.b.100.81 route add -net 192.168.21.0 netmask 255.255.255.0 gw a.b.100.81 route add -net 192.168.254.0 netmask 255.255.255.0 gw a.b.100.81 route add -net 192.168.222.0 netmask 255.255.255.0 gw a.b.100.81 route add -net 192.168.210.0 netmask 255.255.255.0 gw a.b.100.81 route add -net 192.168.200.0 netmask 255.255.255.0 gw a.b.100.81 route add -net 192.168.4.0 netmask 255.255.255.0 gw a.b.0.254 route add -net 192.168.51.0 netmask 255.255.255.0 gw a.b.0.254 route add -net 213.189.196.216 netmask 255.255.255.248 gw a.b.0.254 route add -net x.u.1.0 netmask 255.255.255.0 gw a.b.0.254 route add -net 192.168.223.0 netmask 255.255.255.252 gw a.b.100.83 route add -net a.c.0.0 netmask 255.255.0.0 gw a.b.100.83
[RedHat Linux] Скрипты для вставки команд route add .. те же самые, как и у ASPLinux - /etc/rc.d/rc.sysinit, либо /etc/rc.d/rc.local. Отличие может быть в синтаксисе команды route - не поддерживается ключевое слово netmask, и команда настройки маршрута выглядит по-другому: route add -net a.0.0.0/8 gw a.b.0.254 |