組み込みのマシンNIC(eth0)があり、これはRaspberry PiのDHCPサーバーとして機能します。イーサネットデバイスeth1として表示されるUSB 3Gモデムも持っています。 eth0には/etc/network/interfaces
に静的IP 192.168.100.1があります。Piをサーバーに接続すると、/var/log/syslog
に表示されます
NetworkManager[2366]: <info> Policy set 'Ifupdown (eth0)' (eth0) as default for IPv4 routing and DNS.
以降、ip route show
は
default via 192.168.1.100 dev eth0 proto static
その後、手動で行う必要があります
ip route delete default
ip route add default via 192.168.1.1
再び3Gモデム経由でインターネットに接続します。私はサーバーでDebian 7 wheezyに基づいたCrunchBang Linuxを使用しており、Piで最新のRaspbianを使用しています。
NetworkManagerが優先するデフォルトの経路を選択するにはどうすればよいですか?
編集:こちらが私の/etc/network/interfaces
です:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
allow-hotplug eth0
auto eth0
iface eth0 inet static
address 192.168.100.1
netmask 255.255.255.0
allow-hotplug eth1
auto eth1
iface eth1 inet dhcp
/etc/NetworkManager/NetworkManager.conf
を
[ifupdown]
managed=true
nm-appletを使用して3Gモデムeth1を切断できるようにしたいので。 /etc/NetworkManager/NetworkManager.conf
は次のとおりです:
[main]
plugins=ifupdown,keyfile
[ifupdown]
managed=true
GUIを使用している場合は、[この接続のリソースにのみ使用する]チェックボックスをオンにしてみてください。
(あなたのように)設定ファイルを使用している場合:)、[ipv4]
セクション追加never-default=true
。
このようにして、トンネルに入るデフォルトルートを削除して、独自のルートを追加できます。
私は4年遅れていますが、この問題を発見して修正するのに12時間費やしました。ここで同様の状況:ARMベースのJetson NanoがLinux 4 TegraカーネルとUbuntu 18.04 OSを実行し、イーサネットポート(eth0)がローカルネットワークに使用され、USBセルラードングル(eth1)がインターネットに使用されている) 。
症状は似ています-イーサネットケーブルがインターフェイスに接続されると、インターフェイスが起動し、3分後に表示されます。
NetworkManager [3773]:[1562908622.2587]ポリシー:IPv4ルーティングおよびDNSのデフォルトとして「有線接続1」(eth0)を設定します
syslogとインターネット接続が切断されます。
NetworkManagerは、プログラムするのが難しい神秘的な方法で機能します。ユーザーが前に座って必要に応じてリセットできるようにするのに適しています。私にはその贅沢がないので、それを働かせなければなりませんでした。
最終的に機能したのは、eth1のipv4.route-metric
を低く(優先度を高く)設定することでした。 route -n
の出力を確認して、現在のメトリックを確認します。一部のルートで追加の20000を無視します。これは、NetworkManagerがインターネット接続を持たないルートの優先順位を下げようとするものですが、やっかいです。
したがって、eth0のメトリックが100であるとします。
Sudo nmcli con mod "Wired connection 2" ipv4.route-metric 99
そして再起動します。
トラブルシューティングの10時間を節約するために、ルートメトリックはDNS優先度とは無関係であることに注意してください。それでも接続の問題がある場合は、それがDNS解決の問題ではないことを確認してください(たとえば、DHCPサーバーがダミーの解決サービスを提供している)。ある場合は、eth0接続のipv4.dns-priority
を増やして優先度を低くするか、eth1のipv4.dns-search
が「〜」に設定されていることを確認して、目的のオプションにしてください。
ネットワーク管理者は常に設定を上書きします。編集する必要があります:
vi/etc/network/interfaces
Eth0を見つけて設定します。
gateway 192.168.1.1
ネットワークサービスを再開します。
/etc/init.d/networking restart