Open vswitch のcould not open network deviceエラーについて
ついさっき久々にVMwareのCentOS7を立ち上げて、OVSで遊ぼうと思ってVyosの仮想ルータにPing疎通したんですけど、全部「network unreachable」でおかしいな~ってなりました。
Vyosは起動してるからあとはovs-vsctlコマンドで作成したスイッチが落ちてるかな?って思い確認したら落ちてました。。。
見事にswitch1-4まで全部落ちてました。
4: switch1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether ae:29:30:53:05:4f brd ff:ff:ff:ff:ff:ff 5: switch3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether fe:47:c1:28:0e:45 brd ff:ff:ff:ff:ff:ff 6: switch2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether ee:4e:06:d6:ef:42 brd ff:ff:ff:ff:ff:ff 7: switch4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether 7a:31:87:db:18:42 brd ff:ff:ff:ff:ff:ff
とりあえずswitch1のステータス確認すると・・・
# ovs-vsctl show | tail -10 Bridge "switch1" Port "switch1" Interface "switch1" type: internal Port "d60827b7675b4_l" Interface "d60827b7675b4_l" error: "could not open network device d60827b7675b4_l (No such device)" Port "42dc019e9aaa4_l" Interface "42dc019e9aaa4_l" error: "could not open network device 42dc019e9aaa4_l (No such device)"
な、なんと!!"could not open network device d60827b7675b4_l (No such device)"
良く分からんケどネットワークデバイスをオープンできないっぽい・・・
といわけで本題です。
could not open network deviceエラーを解決しない事にはどうしようもないので自分なりにあれこれ試してエラーを消した方法をご紹介します。
意味ないかもだけどswitchの起動
現状確認と言う事でswitch4の状態を確認するとDOWNしてます。
# ip a | grep switch4 7: switch4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
switch4起動!!
# ip link set switch4 up
[root@localhost ~]# ip a | grep switch4
7: switch4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000 [root@localhost ~]#
これでもエラーは残り、解決ならず・・・
Bridge "switch4" Port "a6a7dad51b954_l" Interface "a6a7dad51b954_l" error: "could not open network device a6a7dad51b954_l (No such device)" Port "e586568506c04_l" Interface "e586568506c04_l" error: "could not open network device e586568506c04_l (No such device)" Port "switch4" Interface "switch4" type: internal ovs_version: "2.10.1"
Port削除
本当はやりたくなかったけどPort削除します。
エラーとなっているPortを確認する
"d60827b7675b4_l"
Bridge "switch1" Port "switch1" Interface "switch1" type: internal Port "d60827b7675b4_l" Interface "d60827b7675b4_l" error: "could not open network device d60827b7675b4_l (No such device)" Port "42dc019e9aaa4_l"
削除していく
# ovs-vsctl del-port d60827b7675b4_l
これでエラーは消えたけど、インタフェースの設定も消えたので再度設定しなおし。。。。
# ovs-docker add-port switch1 eth0 router1 --ipaddress=10.0.1.1/24
以上です。ベストな解決方法とは言えませんが、結果的にエラーは消えました・・・