Назад | Перейти на главную страницу

Пытаясь понять правильный способ создания статического маршрута в CentOS, пожалуйста, помогите

Я пытался понять, как правильно добавить статический маршрут на машине CentOS 6.x. На некоторых форумах говорят создать файл с именем route-dev_name (например, route-eth0) с соответствующим маршрутом и поместите его в /etc/sysconfig/network-scripts , на некоторых форумах говорят, что файл должен называться static-routes , в обоих случаях я не могу установить статический маршрут. Похоже, что в некоторых выпусках CentOS он работает только при именовании файла route-dev_name а в некоторых это работает только при именовании файла static-routes.. Кто-нибудь может мне помочь? Это содержимое моего файла маршрута:

192.168.20.0/24 via 192.168.20.253 dev eth0

заранее спасибо

Создайте файл в / etc / syconfig / network-scripts / route-eth0

добавить добавить следующее

192.168.20.0/24 via 192.168.20.253 dev eth0

Я всегда использовал этот подход. Я считаю, что это лучший подход.

К вашему сведению: Проверьте - https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s1-networkscripts-static-routes.html

Зависящие от устройства маршруты в стиле RH, определенные с помощью /etc/sysconfig/network-scripts/route-device files вызвал множество проблем.

Так что настоящие системные администраторы используют только /etc/sysconfig/static-routes файл без зависимости от устройства:

any net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1

Проблемы:

  • Когда физические устройства подключены, вам нужно помнить о случайном маршруте:устройство файл тоже
  • При реорганизации адаптеров на виртуальной машине.

Естественно всегда следует использовать мост устройств, чтобы можно было избежать маршрутаустройство проблемы с файлами.

Также обратите внимание на синтаксис в /etc/sysconfig/static-routes файл, сниплет из /etc/init.d/network:

    # Add non interface-specific static-routes.
    if [ -f /etc/sysconfig/static-routes ]; then
       if [ -x /sbin/route ]; then
           grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
               /sbin/route add -$args
           done
       else
           net_log $"Legacy static-route support not available: /sbin/route not found"
       fi
    fi

Есть более простой способ добавить маршруты ...

Этот файл - /etc/init.d/network - запускается при загрузке ПК и использует файл /etc/sysconfig/static-routes добавить статические маршруты

Вы должны создать его, потому что его не существует.

Если внимательно прочитать файл /etc/init.d/network, он читает в этом файле каждую строку для добавления маршрутов, эта строка должна начинаться с «any», а «route add -» уже известен.

Итак, в файле, который вы собираетесь создать >> / etc / sysconfig / static-routes, вы должны написать:

any net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1 eth0
  • где 10.0.0.0/24 - это сеть, к которой вы хотите подключиться (255.255.255.0 - маска)
  • где gw 192.168.0.1 - это шлюз, к которому нужно подключиться (конечно, маршрутизатор)
  • где eth0 - это интерфейс, где использовать.

Это лучший способ добавить статические маршруты, 1 файл для всего (не X-файлы для X-интерфейсов)

Я всегда использую route-ethX файловый подход в моих CentOS 6.4 и 6.5:

Создать / редактировать файл /etc/sysconfig/network-scripts/route-ethX (где X - номер вашего интерфейса) и задайте свой маршрут в этом файле:

192.168.20.0/24 via 192.168.20.253 dev eth0

Вы также можете отредактировать этот файл, используя следующий формат (лично я предпочитаю первый синтаксис):

GATEWAY0=192.168.20.253
NETMASK0=255.255.255.0
ADDRESS0=192.168.20.0

Затем перезапустите сеть, чтобы изменения вступили в силу:

service network restart

Дальнейшее чтение : https://www.centos.org/docs/5/html/5.2/Deployment_Guide/s1-networkscripts-static-routes.html

В / и т.д. / sysconfig / сетевые сценарии есть сценарий ifup-маршруты. Он ищет файлы с именем route-dev_name, например маршрут-eth0.

В моем случае файл "/ и т.д. / sysconfig / сетевые сценарии / устройство маршрута"не существовало.

Я продолжаю добавлять в файл нужную сеть или ip "/ и т.д. / sysconfig / статические маршруты"и чтобы сделать это навсегда, я перезагрузил компьютер, и оказалось, что он работает должным образом.

это было сделано в: cat /etc/centos-release CentOS Linux release 7.5.1804 (Core)

С уважением,

Мануэль Лазо