Pages

2011/04/14

Vyattaで作るTransparent FireWall その2/n

前回は透過型構成の説明をしたので、ここからVyattaの設定を入れていきます。
 


 

Vyattaを2つのスイッチ間に入れてブリッジする


これからつくる接続の概要を。

L2のスイッチが2つあり、両方に同一サブネットのホストがつながる環境があるとします。

画像:ブリッジ01
 

Vyatta上でスイッチ間の接続をブリッジするインターフェイスを作成します。

画像:ブリッジ作成
 

ブリッジ経由で両スイッチを接続します。

画像:ブリッジ接続
 

図で表したように、現時点でVyattaはただのL2スイッチです。
 

eth0.eth1をブリッジに参加させることで、物理的なNICのポートは
「ブリッジ(仮想スイッチ)br0に接続するためのポート」
になります。

そしてVyatta自身のインターフェース(L2⇔L3以上)はbr0のみです。
 
 


Vyattaでブリッジを作成する


さて、透過型にはレイヤ2を中継するような設定が必要です。

多くのOSではこの場合ブリッジを作ることで対応することができ、Linuxベースのvyattaにも当然用意されています。

br0を作成します。
$ configure
# set interfaces bridge br0
# commit
# save
#
# show interfaces
bridge br0 {
}
ethernet eth0 {
hw-id ---
}
ethernet eth1 {
hw-id ---
}
loopback lo {
}

 

br0の外部に対応する物理ポートに、eth0,eth1を指定します。
$ configure
# set interfaces ethernet eth0 bridge-group bridge br0
# set interfaces ethernet eth1 bridge-group bridge br0
# commit
# save
#
# show interfaces
bridge br0 {
}
ethernet eth0 {
bridge-group {
bridge br0
}
hw-id ---
}
ethernet eth1 {
bridge-group {
bridge br0
}
hw-id ---
}
loopback lo {
}

 

ついでに普通のLinux的なコマンドでブリッジ構成を確認してみます。
おなじみbrctl.

# sudo brctl show
bridge name bridge id STP enabled interfaces
br0 0000.------------ no eth0
eth1

 


これでブリッジは完成。
結線を変えても左右のネットワークは接続変更前と変わらない通信ができるようになっています。
 




管理用にIPアドレスを設定する


透過型構成ではL2を意識する必要があるので、ここまでVyattaにIPアドレスを振っていません。

結局最後までVyatta自体と通信できるIPアドレスは必要ないんですが、リモートで管理できないのも不便なので触れておきます。

ちなみにここでIPアドレスを付与するインターフェースがbr0になる訳は、前述の図のあたり見ると分かると思います。

例えるとbr0=L2スイッチコア部分、eth0・eth1=スイッチの穴となり、br0だけがVyatta本体にIPパケットを届ける役割を持ったインターフェイスだからです。

※br0に参加してないeth2などがあれば、もちろんVyatta宛のインターフェースとして利用できます。


ipアドレスを付与して、sshを有効にします。
# set interfaces bridge br0 address 192.168.30.254/24
# set service ssh
# commit
# save

 
 
 


ともあれブリッジ設定によって、br0を通過する全てのパケットに対してちょっかいが出せるようになりました。
次はようやくFirewall設定かな。

2 件のコメント:

Vyattaで作るTransparent FireWall その1/n | SawanoBlog 2G さんのコメント...

[...] 次はVyattaでL2ブリッジ。   [...]

Vyattaで作るTransparent FireWall その3/n | SawanoBlog 2G さんのコメント...

[...] 前回で作成したブリッジを使い、FireWallを設定します。     [...]

コメントを投稿