つぶねこ

@もじらもーど。
↑recent | ↓old | 20 index | 100 index | 300 index | 記事5件 | 記事10件 | 記事20件 |最新5件 |FAQ | カテゴリ一覧 | Index |
2012/11/21 18:16
さいきんのLinuxでネットワークブリッジとポートアイソレート

 よくL2スイッチとかについてるポート間のIsolateが便利にゃんだが、vmが増えてくるとそんにゃL2SWが沢山欲しくにゃってくる。いちいち外部のSWを経由させるのも面倒にゃので、速度が必要でにゃい場合はソフトウェアでL2SWの機能を実現したいところ。
 で、それにゃらOpenflowでしょう、ってわけにゃんだがまだ少々敷居が高いので、地道にLinuxで。
 せっかくにゃのでタグVLANを直接放り込む場合の例。
 
apt-get install vlan
modprobe 8021q
vconfig
ifconfig eth1 up
vconfig add eth1 10
vconfig add eth1 11
vconfig add eth1 900
ifconfig eth1.10 up
ifconfig eth1.11 up
ifconfig eth1.900 up
ifconfig -a
 とかで何とにゃくTag解釈出来てることを確認。
 あとは/etc/network/interfacesに
auto eth1.10
iface eth1.10 inet static
address x.x.x.x
netmask x.x.x.x
broadcast x.x.x.x
auto eth1.11
iface eth1.11 inet static
address x.x.x.x
netmask x.x.x.x
broadcast x.x.x.x
auto eth1.900
iface eth1.900 inet static
address x.x.x.x
netmask x.x.x.x
broadcast x.x.x.x
 みたいにゃのを書いて通信できてればOK。
 
 次にブリッジ。上の/etc/network/interfacesは消して
apt-get install bridge-utils
brctl addbr br0
brctl addif br0 eth1.10
brctl addif br0 eth1.11
brctl addif br0 eth1.900
 こんにゃのでブリッジ動作してるかどうか確認。vmにゃら当然vnicがpromiscuous許可されてるかどうかが影響する。
 /etc/network/interfacesは
auto eth1.10
iface eth1.10 inet static
address 0.0.0.0

auto eth1.11
iface eth1.11 inet static
address 0.0.0.0

auto eth1.900
iface eth1.900 inet static
address 0.0.0.0

auto br0
iface br0 inet static
address x.x.x.x
netmask x.x.x.x
metwork x.x.x.x
broadcast x.x.x.x
bridge_ports eth1.10 eth1.11 eth1.900
 こんにゃ感じでブリッジ動作してればOK。
 
 でやっとこさポート間Isolateの話だが、この状態で
apt-get install ebtables
ebtables -P FORWARD DROP
ebtables -F FORWARD
ebtables -A FORWARD -i eth1.900 -j ACCEPT
ebtables -A FORWARD -o eth1.900 -j ACCEPT
 こんにゃんで割と簡単に。この状態で
 network10 が eth1.10 に
 network11 が eth1.11 に
 network900 が eth1.900 に
 繋がっていたとすると、
 network10 <---> network900
 network11 <---> network900
 network10 <-X-> network11
 こういうことににゃる。
 より複雑にゃ通信可否表を満たすためにはebtablesの書式を勉強する必要がありそうだが、とりあえずこれだけでもマルチプルVLAN的にゃことは実現出来ちゃうのでよいかにゃと。
 
 もっとL3にゃ条件で振り分けたい場合は
iptables -m physdev --physdev-in eth
 的にゃ手法も組み合わせることが出来るぽい。ブリッジ経由の場合は
iptables -A FORWARD --in-interface eth
 では動かにゃいぽいので。
 これでifやらMACとかIPやらTCPやら幅広いフィルタマッチングしつつ、L2レベルで転送できるわけで、L3FW積んだL2SWみたいにゃ物も作れそう。



Index


2013/01/13 07:47 
2013/01/12 19:39 
2013/01/11 07:05 
2013/01/10 00:50 
2013/01/09 21:11 
2013/01/08 00:46 
2013/01/07 00:01 
2013/01/06 23:23 
2013/01/05 22:42 
2013/01/04 23:16 
2013/01/03 16:26 
2013/01/02 01:52 
2013/01/01 18:40 
2012/12/31 23:45 
2012/12/30 00:49 
2012/12/29 00:20 
2012/12/28 16:52 
2012/12/25 22:10 
2012/12/24 21:08 
2012/12/23 23:30 
2012/12/22 17:53 
2012/12/21 00:47 
2012/12/20 23:28 
2012/12/19 06:44 
2012/12/18 08:07 
2012/12/16 15:56 
2012/12/15 15:41 
2012/12/14 23:28 
2012/12/13 21:48 
2012/12/12 23:34 
2012/12/11 23:56 
2012/12/10 22:25 
2012/12/09 22:20 
2012/12/08 12:19 
2012/12/07 21:48 
2012/12/06 11:43 
2012/12/05 22:55 
2012/12/04 22:15 
2012/12/03 20:31 
2012/12/02 16:28 
2012/12/01 18:30 
2012/11/30 21:03 
2012/11/29 23:17 
2012/11/28 21:58 
2012/11/27 02:59 
2012/11/26 20:35 
2012/11/25 21:25 
2012/11/24 19:58 
2012/11/23 08:17 
2012/11/22 20:03 
2012/11/21 18:16 
2012/11/20 02:25 
2012/11/19 03:01 
2012/11/18 10:47 
2012/11/17 05:49 
2012/11/16 21:35 
2012/11/15 18:57 
2012/11/14 23:48 
2012/11/13 17:37 
2012/11/12 01:02 
2012/11/11 03:08 
2012/11/10 02:47 
2012/11/09 18:51 
2012/11/08 22:49 
2012/11/07 18:46 
2012/11/06 02:43 
2012/11/05 04:04 
2012/11/04 19:54 
2012/11/03 20:18 
2012/11/02 18:24 
2012/11/01 20:31 
2012/10/31 19:01 
2012/10/30 18:57 
2012/10/30 00:15 
2012/10/29 20:45 
2012/10/28 15:41 
2012/10/27 01:43 
2012/10/26 21:35 
2012/10/26 01:11 
2012/10/25 19:30 
2012/10/24 17:43 
2012/10/23 23:57 
2012/10/23 12:53 
2012/10/22 21:27 
2012/10/22 11:43 
2012/10/21 01:21 
2012/10/20 23:49 
2012/10/20 09:16 
2012/10/19 22:39 
2012/10/19 01:39 
2012/10/18 21:42 
2012/10/18 06:27 
2012/10/17 21:06 
2012/10/17 03:23 
2012/10/16 20:29 
2012/10/16 00:11 
2012/10/15 18:43 
2012/10/15 01:58 
2012/10/14 17:28 
2012/10/14 02:27 
2012/10/13 17:14 

↑recent | ↓old | 20 index | 100 index | 300 index | 記事5件 | 記事10件 | 記事20件 |最新5件 |FAQ | カテゴリ一覧 | Index |