Менеджер мережі розбиває ручні маршрути


9

У мене Ubuntu 13.10, Saucy Salamander x64 працює в якості гостя у VirtualBox (з Windows 7 в якості хоста).

Я написав це, /etc/network/interfacesтому що мені потрібно додати велику кількість постійних ручних статичних маршрутів:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet dhcp
    up ip -force -b /etc/network/eth1-routes

eth1-routes містить кілька рядків форми:

route add 10.0.0.0/8 via 172.x.x.x dev eth1

де 172.x.x.xшлюз, який мені дає VBox NAT.

Після запуску netstat -nrвиявляється, що всі мої ручні маршрути були успішно додані, включаючи маршрути, щоб дістатися до двох серверів DNS через 172.x.x.x.

Однак менеджер мережі каже, що обидва пристрої "не керуються". Якщо я встановлю /etc/NetworkManager/NetworkManager.conf managed=true, менеджер мережі знову працює, але мої маршрути втрачаються. Тож мій поточний компроміс - встановити managed=falseта прокоментувати eth0рядки в /etc/network/interfaces.

Чи можна керувати пристроєм і все-таки робити ручні маршрути, як зазначено вище?

Відповіді:


4

Менеджер мережі не розпізнає заяви, про які ви писали /etc/network/interfaces.

Таким чином, ви можете додати свій скрипт eth1-routesяк сценарій диспетчера для Менеджера мережі в /etc/network/if-up.d/. Він запускатиметься кожного разу, коли інтерфейс піднімається. Можливо, вам доведеться написати у своєму скрипті ", якщо пункт", щоб додати маршрути лише тоді, коли eth1з'явиться. Подобається це:

if [ "$IFACE" == "eth1" ]; then
  route add ...
  route add ...
fi

5

Менеджер мережі управляє власними статичними маршрутами - відкрийте мережевий менеджер і виберіть "дротовий з’єднання 1". Виберіть редагування. виберіть вкладку IPv4. Внизу цієї сторінки є кнопка "Маршрути". Саме там ви додаєте їх. Після закінчення NM записує у файл із кореневими дозволами у його / etc / NetworkManager / system-connection / каталог під назвою "Wired connection 1"

Приклад наступний

ls -l /etc/NetworkManager/system-connections/
total 4.0K
-rw------- 1 root root 216 Aug 26 10:38 Wired connection 1

sudo cat /etc/NetworkManager/system-connections/Wired\ connection\ 1

[802-3-ethernet]
mac-address=A:Real:Mac:Add:re:ss

[connection]
id=Wired connection 1
uuid=df4491fc-0981-4071-82ae-04c7b2d6d9fc
type=802-3-ethernet

[ipv6]
method=auto

[ipv4]
method=auto
route1=10.2.2.0/24,10.1.1.68,1

Де 10.2.2.0 - мережа призначення, а 10.1.1.68 - шлюз.


1

Якщо ви хочете додати маршрут до Ubuntu, який зберігається перезавантаження і не використовує інтерфейс за замовчуванням як шлюз, тоді ви можете додати оператор маршруту до файлу конфігурації NetworkManager для конкретного інтерфейсу.

Додайте маршрут до файлу конфігурації / etc / NetworkManager / system-connection / "ім'я з'єднання" , додавши оператор маршруту до файлу конфігурації для (припускаючи IPv4). Маршрут складається з чотирьох частин; "перший - мережа або адреса IPv4 призначення (мережевий порядок байт), друга - мережа або префікс адреси (1 - 32), третя - наступний скачок (мережевий порядок байт), якщо така є, а четверта - метрика маршруту " .

[ipv4]
method=auto
route1=172.16.0.0/16,192.168.3.1,1

Це еквівалент встановлення маршруту за допомогою наступного твердження маршруту:

route add -net 172.16.0.0 netmask 255.255.0.0 gw 192.168.3.1

Ім’я ключа маршруту визначено в таблиці 12 документації для розробників NetmorkManager. Для отримання додаткової інформації див. Наступну URL-адресу: https://developer.gnome.org/NetworkManager/0.9/ref-settings.html

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.