家のMTU値を下手に変えるとDocker Bridgeが死ぬ

8 min

language: ja bn en es hi pt ru zh-cn zh-tw

こんにちは無能です。

家の環境のDocker環境でなぜかサーバーマシンのアドレスに到達出来ないので、不思議に思っていたらルータ側MTU値を変えたのが原因だった。 curl などしても200 OKとなるが実際にブラウザで開くと画像のように途中で止まって永遠にロード画面になってちょっと困っていた。

image.png

最近なにか変えたかなと思い出したらルータ側MTU値を変更したことを思い出して全て 1500 に戻したら直った。

というのも、WireGuardがちょっと引き下げるのに総じてStarlink環境でMTU値は 1472 に変えた方がいいというRedditソースのおまじない程度にもう少し引き下げたんだがこれが起因だった。 compose.yml でネットワークをホストマシンのネットワークをつかうように network: host にすると直っていたので Docker Bridge 起因なのではとおもったが関連しているだけだった。

$ ip link show | grep -E "br-|docker" 
5: br-13aad139d7db: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
6: br-2dc434eeb46d: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default 
7: br-45fa093100aa: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
8: br-46e6bb59b194: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
9: br-5267070e10e9: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
10: br-645605dcd9b3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
11: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default 
12: br-2c8c384b95cd: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
13: br-5819ab3dabfb: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
14: br-632b4dfffca7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
15: br-9243101a1b11: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
16: br-2612402b7376: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
17: br-91f1adfffccc: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
18: br-ce4a3c384d09: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
19: br-f3c4b8d6015b: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default 
20: veth7edbc95@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-9243101a1b11 state UP mode DEFAULT group default 
21: vethf27ed21@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-f3c4b8d6015b state UP mode DEFAULT group default 
23: veth64aeed9@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-f3c4b8d6015b state UP mode DEFAULT group default 
24: vethf09e0cb@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-13aad139d7db state UP mode DEFAULT group default 
25: vethe7f07de@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-632b4dfffca7 state UP mode DEFAULT group default 
26: veth83acc53@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-f3c4b8d6015b state UP mode DEFAULT group default 
27: veth817b530@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-45fa093100aa state UP mode DEFAULT group default 
28: vethd9335e3@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-91f1adfffccc state UP mode DEFAULT group default 
29: vethfe66e15@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-645605dcd9b3 state UP mode DEFAULT group default 
30: veth2efd851@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-632b4dfffca7 state UP mode DEFAULT group default 
31: vethcbaaf36@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-2612402b7376 state UP mode DEFAULT group default 
32: veth0c7b9fb@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-5267070e10e9 state UP mode DEFAULT group default 
33: vethe8e234e@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-645605dcd9b3 state UP mode DEFAULT group default 
34: vethe96b854@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-ce4a3c384d09 state UP mode DEFAULT group default 
35: vethdcf00db@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-2c8c384b95cd state UP mode DEFAULT group default 
37: veth299ef81@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-632b4dfffca7 state UP mode DEFAULT group default 
79: vethb0a7d2f@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-5819ab3dabfb state UP mode DEFAULT group default 
80: vethe41cd9c@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-5819ab3dabfb state UP mode DEFAULT group default 
81: vethb409b05@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-5819ab3dabfb state UP mode DEFAULT group default 
85: veth4621e98@if2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-46e6bb59b194 state UP mode DEFAULT group default 

確かに見てみると全て MTU 1500 になっている。

結局のところ、 Docker Bridge は仮想NICだからそりゃ同じようにMTU値を変えないといけないやろと今になって思うがそこまで意識していなくて完全に見落としていましたとさ。

というわけで、全部MTU値を1500に戻してまたしばらく様子見します。

Related Posts