OpenVSwitchで特定のパケットを遮断したい
解決したいこと
OpenVSwitchで特定のMACアドレスからのパケットを遮断したいです。
解決方法を教えて下さい。
環境
Ubuntu 20.04
OpenVSwitch 2.13.8
仮想マシン3台
仮想マシン1 IP 192.168.0.1, MAC 08:00:27:c1:9a:cc
仮想マシン2 IP 192.168.0.2, MAC 08:00:27:18:71:ad
仮想マシン3 IP 192.168.0.3, MAC 08:00:27:c7:b0:49
接続構成は以下の通りです。
---------仮想マシン2
|
仮想マシン1---------OpenVSwitch
|
---------仮想マシン3
自分で試したこと
- OpenVSwitchでブリッジを作成
sudo ovs-vsctl add-br NW-br
sudo ovs-vsctl list-br eno1
2.各仮想マシンとNW-br1を接続
3.各仮想マシン間でping疎通確認
4.NW-brに仮想マシン2からのpingを拒否するフローを追加
sudo ovs-ofctl del-flows NW-br1 (フローのリセット)
sudo ovs-ofctl add-flow NW-br1 table=0,priority=0,icmp,dl_src=08:00:27:18:71:ad,actions=drop
sudo ovs-ofctl dump-flows NW-br1 (追加されたフローの確認)
cookie=0x0, duration=14.361s, table=0, n_packets=0, n_bytes=0, priority=0,icmp,dl_src=08:00:27:18:71:ad actions=drop
5.仮想マシン2から仮想マシン1へpingを送信
→pingが疎通してしまう(本来は追加されたフローにより、疎通しないはず)
WireSharkでもNW-brのパケットキャプチャをしましたが、仮想マシン2から仮想マシン1へのpingパケットが疎通していました。そのため、少なくともNW-brを介してpingが飛んでいることは間違いなさそうです。
0 likes