linux下的super vlan配置

2021-05-25 06:44:52 字數 1432 閱讀 5434

linux不顯式支援super-vlan,只支援vlan,如果要實現super-vlan,就必須通過vlan橋接+ectables過濾二層資料幀的方式來實現。

ectables可以過濾vlan之間的廣播幀:這是因為linux下的橋接實現並不能隔離廣播域,也就是說假如橋接一邊的vlan 2中發出乙個廣播包,橋接另一邊的vlan 3也能收到該廣播包,這顯然不符合super-vlan的「二層隔離,三層互通」的原則。

簡單的配置示例(不包含ectables的配置),vmware驗證通過:

1.建立bridge1:

brctl addbr bridge1

2.將eth0介面加入bridge1:

ifconfig eth0 0.0.0.0 down

ifconfig eth0 0.0.0.0 promisc

brctl addif bridge1 eth0

ifconfig bridge1 192.168.0.2 netmask 255.255.255.0 up

3.建立vlan:

vconfig add eth0 2

vconfig add eth0 3

4.將vlan加入bridge:

ifconfig eth0.2 0.0.0.0 down

ifconfig eth0.2 0.0.0.0 promisc

brctl addif bridge1 eth0.2

ifconfig eth0.3 0.0.0.0 down

ifconfig eth0.3 0.0.0.0 promisc

brctl addif bridge1 eth0.3

5.進行arp繫結(因為閘道器192.168.0.1是vmware的vmnet1,不是路由器,無法獲取到目的ip的mac位址):

arp -s 192.168.1.120 00:26:18:c2:4f:c0 -i eth0.2

arp -s 192.168.1.120 00:26:18:c2:4f:c0 -i eth0.3

arp -s 192.168.1.29 bc:ae:c5:c1:77:89 -i eth0.2  

arp -s 192.168.1.29 bc:ae:c5:c1:77:89 -i eth0.3

route add default gw 192.168.0.1

6.利用traceroute工具進行測試,在目標pc 192.168.1.29 上進行抓包:

traceroute -i eth0.2 192.168.1.29

traceroute -i eth0.3 192.168.1.29

7.可以發現兩次traceroute的源位址一樣,但是所攜帶的vlan id卻不相同。

上述配置只是當前有效,如果需要啟動後生效,需要將上述配置加入/etc/rc.d/rc.local中,讓系統每次啟動時候自動執行

Linux下ZendOptimizer的安裝與配置

內容 在裝的好的red hat linux 9 apache 2.0.55 mysql 5.1.6 php 5.1.2後,接下來就是安裝linux下的php加速器zendoptimizer 2.6.2了。自己編譯 php 後,zend optimizer 2.6.2 需要自己設定一下,請參照以下步驟...

Linux下的命令

管理員 普通使用者 pwd 顯示當前檔案全路徑 date 顯示系統當前日期和時間 who 顯示當前已登入的所有使用者名稱 cal 顯示日曆 uname r m,i,v 顯示當前系統作業系統資訊 wc l 行數,w字數,c位元組數 統計字數 clear 清屏 檔案操作touch 新建檔案mkdir 新...

linux 下 奇怪的

最近在做乙個從hp ux移行到linux 上面的專案,遇到乙個命令 hp ux date y m d h m s read sys date sys time dev null 2 1 但是這個命令在linux 下,就達不到預期的結果 之後問了高手,才得到解決辦法 linux read sys da...