Ubuntu 16.04を実行しているラップトップを2つの異なるネットワークに接続しています(実際、これを経験しているラップトップモデルは5つあります)。 1つはワイヤレスネットワークであり、もう1つはそうではありません。これら2つのネットワークには、異なるDNSサーバーがあります。
既知のホストへのpingまたはssh接続の確立を試みると、「不明なホスト」エラーが発生し、1秒間に5つのpingコマンドを実行できます。またはなし)。ホスト名で「nslookup」を使用すると、同じことが起こります。 IPアドレスでSSHを使用すると、エラーが表示されません。これにより、Ubuntuは使用するネットワークのDNSサーバーをランダムに選択すると信じています。
つまり、どちらのネットワークのDNSサーバーを使用するかを選択する方法がありますか、どちらかがホストを知らない場合、Ubuntuに両方を要求しますか?
「ip route list」は、ネットワークのさまざまなメトリックをリストします。1つは100、1つは600に設定されます。
関連する可能性のある他の情報がある場合は、お知らせください。
/etc/resolv.confの内容:
Resolvconf(8)によって生成されたglibc resolver(3)の動的resolv.conf(5)ファイルは、このファイルを手動で編集しないでください-変更内容は上書きされます
ネームサーバー127.0.1.1
search xx.yy.zz
IPルートリストの出力
デフォルトは10.80.0.1 dev enp0s25 proto static metric 100経由
10.125.64.1経由のデフォルトdev wlo1 proto static metric 600
10.80.0.0/24 dev enp0s25 proto kernel scope link src 10.80.0.54 metric 100
10.125.64.0/19 dev wlo1 proto kernel scope link src 10.125.83.244 metric 600
10.220.2.16 10.80.0.1 dev enp0s25 proto dhcp metric 100経由
169.254.0.0/16 dev enp0s25スコープリンクメトリック1000
192.0.2.1(10.125.64.1経由)dev wlo1 proto dhcp metric 600
user@Host:~$ nmcli dev show enp0s25 | grep DNS
IP4.DNS[1]: 10.220.2.5
user@Host:~$ nmcli dev show wlo1 | grep DNS
IP4.DNS[1]: 10.220.2.24
Ubuntu自体は常にDNSをすべて使用します。最初のDNSで1つのアドレスが見つからない場合、利用可能な2番目のアドレスを試します。
したがって、あなたのソリューションは、/etc/resolv.conf
が空であることがわかりましたが、dhcpによってDNSサーバーが正しく配布されているという情報を提供したからです。
NetworkManagerを無効にして、すぐに問題を修正するインターフェースを使用するか、/etc/NetworkManager/NetworkManager.conf
を調べてdns=XXXXXX
行を探し、その行を削除するか、その行をコメントアウトします。
NetworkManager Sudo systemctl restart NetworkManager.service
を再起動すると、DNSが/etc/resolv.conf
に設定されます
使用しているモデルにはネットワークカードレベルの静的ルーティングが必要なので、両方のネットワークカードの静的ルーティングが欠落していると思います。
以下のようにネットワークインターフェイスを編集できます。
自動eth1
iface eth1 inet static
アドレス10.0.0.100
ネットマスク255.255.255.0
ポストアップルートは、10.0.0.1 dev eth1経由で10.0.0.100を追加します
自動eth2
iface eth2 inet static
アドレス10.0.1.100
ネットマスク255.255.255.0
ポストアップルートは10.0.1.1 dev eth2経由で10.0.1.100を追加します
このようにして、クエリを異なるネットワークにルーティングします。