特定のネットワーク経由でUbuntuにdockerをインストールした後、インターネットに接続できない

特定のネットワーク経由でUbuntuにdockerをインストールした後、インターネットに接続できない

Ubuntu 18.04 に docker をインストールした後、特定のネットワークに接続できなくなりました。大学のネットワーク ログイン用のユーザー名とパスワードがありますが、問題はログインできなくなってしまったことです。使用している VPN 接続はサーバーへのものです:アクセス1.sharif.ir
次のような類似の問題があることは知っています: Ubuntu 18.04にdocker-ceをインストールするとホストのインターネット接続が切断される
しかし、私はデーモン.json私の docker フォルダに、どうしたらいいのかわかりません。助けてください!

答え1

次のコマンドを実行してみてください。

dhclient -v -4

Docker のせいでマシン上の接続が失われたときに役立ちました。

答え2

注: このソリューションは複数のコンピューターでテストされています。シャリフ工科大学Ubuntu および Arch ラップトップの場合。

まったく同じネットワークで、まったく同じ問題が発生しましたmanjaro (arch linux)。これは、docker が172.27.1.1デフォルトで、Sharif Universityネットワークで使用されているのとまったく同じネットワークを使用するためです。

私はdockerフォーラムで説明されているdockerのデフォルトルーティングを変更しただけですここ/etc/docker/daemon.jsonさらに詳しく説明するには、次の方法でファイルを開きます (または作成します) 。

sudo nano /etc/docker/daemon.json

次に、この json を追加して問題を解決します (所属機関または会社が使用していないものを使用する必要があることに注意してください)。

{
    "bip" : "10.10.2.1/24",
    "ipv6": false
}

その後、システムを再起動すれば完了です。またはifconfigコマンドを使用して、docker インターフェースを確認することもできますifconfig docker0

答え3

Debain 10 でも同じ問題が発生しています。実行してもdhclient問題は解決しません。DHCP サーバーから新しい IP リースを取得するだけだからです。問題は、docker コンテナーを実行すると、ホスト サイトの docker インターフェイス経由で新しいデフォルト ルートが追加されることです。

(base) mkawka@smok:~$ ip route
default dev vethe8e28b3 scope link 
default via 192.168.5.1 dev wlp2s0 
default dev enp3s0 scope link metric 1002 linkdown 
10.99.0.0/16 dev docker0 proto kernel scope link src 10.99.0.1 
169.254.0.0/16 dev enp3s0 proto kernel scope link src 169.254.10.179 linkdown 
169.254.0.0/16 dev vethe8e28b3 proto kernel scope link src 169.254.53.97 
192.168.5.0/24 dev wlp2s0 proto kernel scope link src 192.168.5.4 

編集: わかりました。Debian の解決策は、Connman が docker ネットワーク インターフェイスを操作しないようにすることです。これを行うには、ファイルを編集して/etc/connman/main.conf、次の行のコメントが解除されていることを確認します。

NetworkInterfaceBlacklist = vmnet,vboxnet,virbr,ifb,ve-,vb-,docker,veth

他のディストリビューションでは、NetworkManager に同様のオプションがあると思います。

関連情報