私はドイツの鉄道会社「deutsche Bahn」の電車に乗って旅行しています。無線LANに接続されており、ブラウザからWebサイトにアクセスしたいが、キャプティブポータルへのリダイレクトは機能しません。
携帯電話も接続しましたが、すべてがうまく動作するので、無線LANに問題がないと思います。
DockerがインストールされているバージョンのManjaro Linux Gnomeを実行しているHP Elitebook 840G5があります。
問題が何であるかを確認して解決する方法を知りたいです。
いくつかの調査の最後に自分で解決策を見つけましたが、同じ問題を抱えている他の人を助けるために私の解決策を共有したかったのです。
答え1
ICE列車のwlanがマイコンピュータのdockerと同じサブネットを使用しているため、問題が発生します172.18.x.x
。
ここにも概要があります。ここ(残念ながらドイツ語でのみ提供)
Dockerの新しいデフォルトIP範囲を定義し、次のように生成して問題を解決しました/etc/docker/daemon.json
。
{
"default-address-pools":
[
{"base":"172.19.0.0/16","size":24}
]
}
その後、dockerデーモンを再起動しましたsudo systemctl restart docker.service
。
その後(依存ポータルに正しくリダイレクトして)、インターネットにアクセスできました。
答え2
@Mutzmannが提案したのと同じ設定を変更しても効果はありません。dockerによって作成されたブリッジはすでに存在します。。
すべてのブリッジを一覧表示します。
$ ip addr
影響を受けるIP範囲。
172.16.255.255
, 172.17.255.255
, 172.18.255.255
- 後者が私に役立ちました。
同じIP範囲(主に172.18.255.255)を占めるネットワークを削除するには、名前と一緒に使用してくださいìp addr
。
$ sudo ip link delete <name>
答え3
受け入れられた答えに加えて、daemon.json
私も実行する必要がありました
docker network prune
これはネットワークを手動で削除するのと同じ効果がありますが、より安全であると思います。
答え4
Thinkpad P1 Gen 6ユーザーのManjaro:今日、Dockerはもはや問題にならないようです。しかし、Powersourceの答えから正しい方向に進むことができました。ローカルクラスクラスタランニング。そして、このネットワークはwifionice@DB列車(および他のWi-Fi)へのアクセスをブロックします。 Aはip route show
問題を可視化しました。
$ ip route show
default via 172.18.0.1 dev wlp0s20f3 proto dhcp src 172.18.190.49 metric 20600
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.18.0.0/16 dev br-43d8dc2b2c68 proto kernel scope link src 172.18.0.1
172.18.0.0/16 dev wlp0s20f3 proto kernel scope link src 172.18.190.49 metric 600
しかし、どのプログラムがそれを生成したかを確認することはできませんbr-43d8dc2b2c68
。 Aがdocker network ls
私をソースに導いた。私のローカル同種クラスターは次のとおりです。
$ docker network ls
NETWORK ID NAME DRIVER SCOPE
23ed3caa264b bridge bridge local
1ee621aa8c0e host host local
43d8dc2b2c68 kind bridge local
49f62ac6dea5 none null local
名前がほぼ同じネットワークを調査した結果、docker inspect
問題が明らかになりました。
docker inspect 43d8dc2b2c68
[
{
"Name": "kind",
"Id": "43d8dc2b2c68fa3744c378f6b3b5607a03f8e04e50a497984590bad2fb9b1b30",
"Created": "2024-03-14T13:35:51.518082136+01:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": true,
"IPAM": {
"Driver": "default",
"Options": {},
"Config": [
{
"Subnet": "172.18.0.0/16",
"Gateway": "172.18.0.1"
},
{
"Subnet": "fc00:f853:ccd:e793::/64",
"Gateway": "fc00:f853:ccd:e793::1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {},
"Options": {
"com.docker.network.bridge.enable_ip_masquerade": "true",
"com.docker.network.driver.mtu": "1500"
},
"Labels": {}
}
]
ホモクラスターを削除し、残りのネットワークをクリーンアップすることで問題を解決しました。カテゴリクラスタの表示:
$ kind get clusters
kind
カテゴリクラスタの削除:
$ kind delete clusters kind
Deleted nodes: ["kind-control-plane"]
Deleted clusters: ["kind"]
今すぐ使用していないDockerネットワークをクリーンアップしてください。
$ docker network prune
WARNING! This will remove all custom networks not used by at least one container.
Are you sure you want to continue? [y/N] y
Deleted Networks:
kind
種類ブリッジを介して種類クラスタを再起動してからkind create cluster --image kindest/node:v1.29.2 --wait 5m
戻りましたが、wifionice準拠のIP範囲は次のとおりです172.19.0.0/16
。
$ docker network ls
NETWORK ID NAME DRIVER SCOPE
23ed3caa264b bridge bridge local
1ee621aa8c0e host host local
17ace3590fae kind bridge local
49f62ac6dea5 none null local
$ ip route
default via 172.18.0.1 dev wlp0s20f3 proto dhcp src 172.18.190.49 metric 600
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.18.0.0/16 dev wlp0s20f3 proto kernel scope link src 172.18.190.49 metric 600
172.19.0.0/16 dev br-17ace3590fae proto kernel scope link src 172.19.0.1