2015年11月14日土曜日

Open vSwitch ブリッジインターフェースのMACアドレスを固定する


このエントリーをはてなブックマークに追加


久々に更新です。ネタはあるのですが忙しくてなかなかアウトプットできてませんでした。

タイトルの通り、Open vSwitch で作成するブリッジのMACアドレスを固定化します。通常はOVSが適当に割り当てます。
インターフェース作成後に、以下の感じでデバイスと与えたいMACアドレスを指定します。

$ ovs-vsctl set bridge br-ex other-config:hwaddr=92:c3:28:4c:09:45

これはOpenStack上のインスタンスでいろいろ実験したい時に便利です。

通常OpenStackのNeutronの論理ポートは接続先の仮想マシンに割り当てたIPアドレスとMACアドレス以外の通信を許可しません。そのためブリッジデバイスやらをインスタンス上で作ってもそのままでは通信することができません。

そこで、このコマンドでMACを固定化した上で、Neutronの allowed-address-pairs という機能を使い以下のように、論理ポートに対して特定のIP/MACの組み合わせを許可する設定を入れ込むことで、かなり自由な通信を行うことが可能になります。


特定IP指定や、
$ neutron port-update $PORTID00 \
  --allowed-address-pairs type=dict list=true mac_address=fa:16:3e:0c:6d:89,ip_address=172.16.100.99


CIDR指定が可能です。
neutron port-update $PORTID00 \
  --allowed-address-pairs type=dict list=true mac_address=fa:16:3e:0c:6d:89,ip_address=172.16.100.0/24