У меня есть 2 NIC на сервере, один предназначен для внутренней связи с IP 10.10.10.X, а другой - 172.X.X.X IP для внешней связи.
У меня есть такая таблица маршрутов
[root@hadoopslave1 ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.10.10.0 * 255.255.255.0 U 0 0 0 em1
172.X.X.0 * 255.255.255.0 U 0 0 0 em3
link-local * 255.255.0.0 U 1002 0 0 em1
link-local * 255.255.0.0 U 1004 0 0 em3
default 10.10.10.1 0.0.0.0 UG 0 0 0 em1
здесь маршрут по умолчанию проходит через шлюз 10.10.10.1. Я удалил маршрут по умолчанию и добавил новый маршрут для шлюза 172.X.X.1, но при перезагрузке он восстанавливается.
Какие изменения необходимо внести, чтобы убедиться, что эти изменения сохранятся даже после перезагрузки.
Вероятно, вам придется покопаться в / etc / sysconfig / network и / etc / sysconfig / network-scripts
Шлюз по умолчанию определяется сетевыми сценариями, которые сначала анализируют файл / etc / sysconfig / network, а затем файлы ifcfg сетевого интерфейса для интерфейсов, которые «работают». Файлы ifcfg анализируются в порядке возрастания числовых значений, и последняя прочитанная директива GATEWAY используется для составления маршрута по умолчанию в таблице маршрутизации.
Для CentOS 7 вы также можете искать директивы DEFROUTE в этих файлах, см. https://wiki.centos.org/FAQ/CentOS7
Я могу решить проблему, вызванную РАЗМОРАЖИВАТЬ = да запись в обеих конфигурациях NIC, em1 и em3.
В em1, который предназначен для внутренней связи, я изменил его на no и перезапустил сетевые службы.
Вам нужно проложить маршрут /etc/sysconfig/network-scripts/route-em3
и поместите маршрут следующим образом (очевидно, замените класс IP на свой):
192.168.10.0/24 via 192.168.12.1 dev eth1
Затем вы можете просто перезапустить сетевую службу service network restart
и увидим, что маршрут будет добавлен. Это также сделает его постоянным после перезагрузки.