Как сделать мой маршрут по умолчанию (или любой статический) постоянным в Linux (в частности, в Fedora 9)? - PullRequest
6 голосов
/ 14 октября 2008

Я только что выполнил новую установку самой последней (осень, 2008 г.) версии Fedora 9 Linux и озадачен тем, что она никогда не устанавливает правильный маршрут по умолчанию и что даже путешествуя лабиринтными путями этой ОС, нет очевидного способ.

Конечно, ясно, что это можно сделать на разовой основе, например:

   route add default gw gw1 metric 0 eth0

или как это:

   ip route add to default via 192.168.2.1 protocol static

Однако ни одна из этих перезагрузок не выживает. Читая /etc/rc.d/init.d/network, он пытается найти данные из файла в / etc / sysconfig / static-routs, но этот файл никогда не существовал. Итак, я попытался создать его и заполнить его данными. Проблема в том, что сценарий помещает тире (знак минус) в нечетное место, с которым я не знаю, как с этим справиться.

Конечно, можно просто отредактировать /etc/rc.d/init.d/network, но это будет нестандартно. На самом деле, мой единственный другой ресурс - это редактирование rc.local, но это не происходит достаточно рано в последовательности загрузки для таких вещей, как, например, демон сетевого времени.

Я сделал свою домашнюю работу - я прочитал все справочные страницы, информационные записи, попробовал по поводу, и я даже сделал немало поисков в Интернете, но все безрезультатно - мой следующий шаг, без ответа здесь , будет подписаться на списки рассылки Fedora и спросить там! Или откажитесь и отредактируйте сценарии.

Итак, как это сделать?

Ответы [ 5 ]

9 голосов
/ 14 октября 2008

Шлюз обычно устанавливается в / etc / sysconfig / network-scripts / ifcfg-eth0, а не в / etc / sysconfig / network. Например, на моем текущем компьютере:

/ и т.д. / sysconfig / сеть

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=flyboys
NISDOMAIN=ekcineon

/ и т.д. / sysconfig / сети-скрипты / ifcfg-eth0

DEVICE=eth0
ONBOOT=yes
HWADDR=00:1d:09:31:3a:cc
NETMASK=255.255.255.0
IPADDR=150.102.65.30
GATEWAY=150.102.65.252
TYPE=Ethernet

Обратите внимание, что я установил HWADDR, потому что у меня есть две карты Ethernet, и я хочу убедиться, что правильная назначена на eth0. Конфигурация для второй карты находится в / etc / sysconfig / network-scripts / ifcfg-eth1

2 голосов
/ 18 сентября 2016

просто отредактируйте /etc/sysconfig/network-scripts/route-ethXX

и напишите внутри: по умолчанию через ip_address dev device , замените ip_address на ваш шлюз ip и устройство на название правильного эти устройства . но для опции Device его ... необязательно, установите его в случае нескольких устройств eth. Работает даже в случае перезапуска сети, директива route в rc.local работает только при загрузке.

1 голос
/ 14 октября 2008

Я не использовал последние версии Fedora, но она часто задавалась как переменная GATEWAY в /etc/sysconfig/network.

Конечно, если вы просто хотите, чтобы это работало, вы можете просто поместить команды в /etc/rc.local для выполнения после завершения последовательности загрузки.

0 голосов
/ 27 октября 2014

Вот оно для RHEL, так как оно немного отличается:

  1. Определите интерфейс с помощью ifconfig
  2. sudo vi / etc / sysconfig / network-scripts / route-ethXX
  3. добавить маршруты согласно приведенному ниже синтаксису, где / xx представляет маску подсети
    host: 172.30.xxx.xxx via 172.30.xxx.xxx
    network: 172.30.xxx.xxx/xx via 172.30.xxx.xxx
    Default gateway: 0.0.0.0 via xxx.xxx.xxx.xxx</li>
    

    Сохраните файл.
  4. sudo /etc/init.d/network restart (Предупреждение: если вы забыли установить правильные маршруты для интерфейса управления (если применимо) вы можете потерять подключение к серверу)
0 голосов
/ 14 октября 2008

Не видел Федору. Но разве не должен быть какой-то графический интерфейс для такого рода вещей? Если у вас есть Gnome, попробуйте запустить gnome-network-preferences

...