諸事情で所属するVLANが異なるけどもサブネットが同じホスト同士を通信させたくなりました。
単に802.1Qに対応したインテリなL2を入れればOKなんですが手元になかった為、Vyattaに中継してもらいます。
構成と設定を紹介。
要点まとめ
作りたいもの。
- L2ブリッジ
- eth0側の通信はタグなし
- eth1からの入出力は任意のVLANタグをつける
こんなもんですか。
構成
NICが2つついたVyattaを挟みます。
これでVyattaとホスト間の通信ができるので、ブリッジで接続しましょう。
うむ。
設定
実際に設定するコマンドはこんな感じです。
$ configure
## ブリッジグループ作成
# set interfaces bridge br0
## eth0をグループに追加
# set interfaces ethernet eth0 bridge-group bridge br0
## eth1.100を作成して グループに追加 (1行で書いてもOK)
# set interfaces ethernet eth1 vif 100
# set interfaces ethernet eth0 vif 100 bridge-group bridge br0
## 有効化とセーブ
# commit
# save
確認しよう、インターフェイスがそれぞれがブリッジグループに入っていますね。
# show interfaces
bridge br0 {
}
ethernet eth0 {
bridge-group {
bridge br0
}
hw-id ---
}
ethernet eth1 {
hw-id ---
vif 100 {
bridge-group {
bridge br0
}
}
}
これで通信OK。
まとめ
普通にbrctlとかで作ると操作体系がバラバラで面倒ですが、Vyattaだとわかりやすい。
まとめ中に気付いたけども、eth0とeth0.100にすればVyattaのNICは一つでいいのかな? つなぎ方に気を使うが。
ちなみにこの構成、eth1をブリッジグループに加えた場合は eth1 eth1.100 ともに中継してくれます。
ということでeth1.101やeth1.102 を作ってブリッジグループに加るなどすれば一種のトランクポートとしても扱えますね。
冒頭にも書いたように別にVyatta固有の機能なわけではないのですが、コマンドラインのわかりやすさとマニュアル一式がわかりやすいので使ってます。
0 件のコメント:
コメントを投稿