Linux Redhat 6 Сетевых кормушек соединяет интерфейсом с приоритетом

У меня есть вопрос относительно менеджера RedHat 6 по Корпоративной сети (NM):

Мой Linux подключен к двум сетевым интерфейсам.

1 – eth0: Нормальный Ethernet, который подключен к компании LAN

2 – eth1: аппаратный ключ USB, который подключен к сотовой сети (CDC-ECM)

интерфейс eth0 всегда соединяется, и интерфейс eth1 непостоянный (соединение может прийти и уйти),

Когда оба соединились, NM уделяет первостепенное значение eth0. При значении маршрут по умолчанию (0.0.0.0) всегда определяется через него.

Я хочу изменить политику NM, что она отдаст более высокий приоритет eth1. Когда интерфейс eth1 не соединен, маршрут по умолчанию должен определенный через интерфейс eth0 и когда eth1 соединен, маршрут по умолчанию должен пройти eth1.

Я искал сеть о том, как сделать это и играемый со сценариями NM, и ifcfg-eth0 / ifcfg-eth1 файлы (попробовал DEFROUTE и другие опции), но не мог заставить его работать.

Кто-либо может предложить то, что должно быть правильным способом сделать это с помощью NM?

Спасибо!

1
задан 14 April 2015 в 15:54
2 ответа

Правка: Добавить решение ОП из комментариев:

  • Удалить eth0 (проводной) из NM
    • NM_CONTROLLED=нет
  • Left eth1 (беспроводной) control.
    • По умолчанию, когда NM_CONTROLLED опущен
  • Set eth1 METRIC=20
  • Производит 2 маршрута по умолчанию, где eth1 имеет приоритет

Answer:

Network Manager всегда может выбрать беспроводной или проводной в качестве основного (на основе других вопросов здесь), который, кажется, включает в себя взаимодействие с метрикой маршрута и dhcp, рекламой маршрутизатора (где NM следует за 1 метрикой), взаимодействие вверх/вниз и RedHat-специфику.

Предположим, что вы используете его: DHCP может сбросить ваш маршрут на "лучший" в соответствии с метрикой маршрута¹. Более высокие значения метрик являются более "дорогими", поэтому предпочтительнее использовать менее дорогостоящие метрики . В списке Network Manager здесь отмечено, что метрики беспроводной dhcp-сети оштрафованы на +100, и разработчики NM говорят, что NM должна просто выбрать правильный маршрут, но метрики могут быть и лучшим методом устройства. Я не уверен, что это относится к вашему eth1, но вы можете это контролировать:

Обменяв номера (10 и 20) с этим ответом для ваших интерфейсов, я получаю:

$ sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
METRIC=20

$ sudo vi /etc/sysconfig/network-scripts/ifcfg-eth1
METRIC=10

Этот ответ говорит, что это должно предпочитать беспроводное соединение и выполнять изящный обход отказа между интерфейсами.

Если вы хотите, чтобы NM выбрала в качестве устройства, ключевые слова интерфейса GMambaG также рассматриваются в RedHat docs для маршрутов static, в которых отмечаются неожиданные проблемы, связанные с использованием нескольких шлюзов + GATEWAYDEV. Чтобы проверить это, запустите оба интерфейса и попытайтесь возобновить работу после удаления протокола eth1. Если у вас возникли проблемы (например, прерывистые таймауты), вы должны быть в состоянии восстановиться, удалив изменения и перезапустив сеть:

$ sudo service network restart

Если все остальное не работает, реклама маршрутизатора (ICMP типы 9 и 10, я думаю) может повлиять на ваши таблицы маршрутов; согласуйте с сетевым администратором, прежде чем пытаться их заблокировать.

Правка: Уменьшил текст этого ответа, поместив сверху решение ОП.

¹ Если вы не используете DHCP, у вас должен быть ручной шлюз. Эта статья предлагает использовать NM_CONTROLLED="нет", чтобы предотвратить автоматическое переключение NM на шлюз этого интерфейса.

.
0
ответ дан 4 December 2019 в 00:09

Red Hat использует последний интерфейс в качестве шлюза по умолчанию.

Чтобы установить eth1 по умолчанию, добавьте его в / etc / sysconfig / сеть :

GATEWAYDEV = eth1

См .: https://access.redhat.com/solutions/41459

Он должен обрабатываться при каждом вызове ifup . Вы можете проверить маршруты с помощью ip route show

1
ответ дан 4 December 2019 в 00:09

Теги

Похожие вопросы