web-dev-qa-db-ja.com

Network Managerは手動ルートを中断します

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を実行すると、172.x.x.xを介して2つのDNSサーバーに到達するルートを含む、すべての手動ルートが正常に追加されたように見えます。

ただし、ネットワーク管理者は、両方のデバイスが「管理されていない」と言います。 /etc/NetworkManager/NetworkManager.confmanaged=trueを設定すると、ネットワークマネージャーは再び動作しますが、ルートが失われます。したがって、現在の妥協点は、managed=falseを設定し、eth0/etc/network/interfaces行をコメント化することです。

デバイスを管理しながら、上記のように手動ルートを実行する方法はありますか?

9
Reinderien

Network Managerは、/etc/network/interfacesで記述したステートメントを認識しません。

したがって、スクリプトeth1-routesをNetwork Managerのディスパッチャスクリプトとして/etc/network/if-up.d/に追加できます。インターフェイスが起動するたびに実行されます。 eth1が表示された場合にのみルートを追加するには、スクリプトに「if句」を記述する必要があります。このような:

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

Network Managerは、独自の静的ルートを管理します-Network Managerを開き、「有線接続1」を選択します。編集を選択します。 [IPv4]タブを選択します。このページの下部には、「ルート」のボタンがあります。そこで追加します。完了したら、NMは、「有線接続1」と呼ばれる/ etc/NetworkManager/system-connections /ディレクトリ内のルート権限を持つファイルに書き込みます

例が続きます

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はゲートウェイです。

5
Fred

再起動を維持し、デフォルトのインターフェースをゲートウェイとして使用しないルートをUbuntuに追加する場合、特定のインターフェースのNetworkManager構成ファイルにrouteステートメントを追加することができます。

/ etc/NetworkManager/system-connections/"connection name"構成ファイルにルートを追加します。 IPv4)。ルートには4つの部分があります。 」最初は宛先IPv4ネットワークまたはアドレス(ネットワークバイト順)、2番目は宛先ネットワークまたはアドレスプレフィックス(1-32)、3番目は次ホップ(ネットワークバイト順)の場合any、4番目はルートメトリックです」

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

これは、次のrouteステートメントを使用してルートを設定することと同等です。

route add -net 172.16.0.0 netmask 255.255.0.0 gw 192.168.3.1

ルートキー名は、NetmorkManager開発者ドキュメントの表12で定義されています。詳細については、次のURLを参照してください。 https://developer.gnome.org/NetworkManager/0.9/ref-settings.html

1
nuwandame