Как мне сделать мой стандартный (или любой статический) маршрут постоянным в Linux (в частности, Fedora 9)?
-
10-07-2019 - |
Вопрос
Я только что выполнил новую установку самой последней (осень 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-routes, но этот файл никогда не существовал.Итак, я попытался создать его и заполнить данными.Проблема в том, что скрипт помещает тире (знак минуса) в нечетное место, с которым я не уверен, как справиться.
Конечно, можно просто отредактировать /etc/rc.d/init.d/network, но это было бы нестандартно.Как бы то ни было, моим единственным выходом, похоже, является редактирование rc.local, но это происходит недостаточно рано в последовательности загрузки, чтобы быть там для таких вещей, как, например, демон сетевого времени.
Я сделал свою домашнюю работу - я прочитал все справочные страницы, информационные записи, попробовал по этому поводу и даже немного поискал в Интернете, но все безрезультатно - моим следующим шагом, без ответа здесь, будет регистрация в списках рассылки Fedora и запрос там!Или сдайтесь и отредактируйте сценарии.
Итак, как же это можно сделать?
Решение
Шлюз обычно устанавливается в /etc/sysconfig/network-scripts/ifcfg-eth0, а не в /etc/sysconfig/network.Например, на моем текущем компьютере:
/etc/sysconfig/сеть
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=flyboys
NISDOMAIN=ekcineon
/etc/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
Другие советы
просто отредактируйте / etc / sysconfig / network-scripts / route-ethXX
и напишите внутри: по умолчанию через устройство ip_address dev , замените ip_address на ваш ip шлюза и устройство название подходящего устройства . но для Device option его ... необязательно, установите его в случае нескольких устройств eth. Работает даже в случае перезапуска сети, директива route в rc.local работает только при загрузке.
Я не использовал последние версии Fedora, но она часто задавалась как переменная GATEWAY в / etc / sysconfig / network.
Конечно, если вы просто хотите, чтобы это работало, вы можете просто поместить команды в /etc/rc.local для выполнения после завершения последовательности загрузки.
Не видел Федору. Но разве не должен быть какой-то графический интерфейс для такого рода вещей? Если у вас есть Gnome, попробуйте запустить gnome-network-Предпочтения
Вот это для RHEL, так как оно немного отличается:
- Определите интерфейс с помощью ifconfig
- sudo vi /etc/sysconfig/сетевые скрипты/маршрут-ethXX
- добавьте маршруты в соответствии с приведенным ниже синтаксисом, где /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>
- Сохраните файл.
- sudo /etc/init.d/перезапуск сети (предупреждение:если вы забудете установить правильные маршруты для интерфейса управления (если применимо), вы можете потерять подключение к серверу)