歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

某高校校園網實現--VLAN及策略路由的實現

  一、網絡拓撲圖(附件所示)及網絡規劃:      交換機為Cisco2924,劃分為3個VLAN,VLAN10給辦公室用,VLAN13給教室用,VLAN12為服務器區域,將交換機的第24口置為trunk模式(VLAN中繼線)。     網關機采用Linux系統,安裝有兩塊衛星卡,通過兩個Modem撥號並建立VPN,給Office分配子網為192.168.9.0/27,教室為192.168.10.0/24,服務器區域為192.168.5.0/28。     另外要求office在9:00——22:00能夠上網,Classroom在18:30——22:00能夠上網,並且每個子網都可以訪問192.168.5.0/28內的web服務器。   教室不能訪問辦公室。     二、Cisco2924交換機上VLAN的配置:   在Cisco2924交換機上,將1—8號端口設置為VLAN10,將9—16號端口設置為VLAN13,將17—22號端口設置為VLAN13,將23號端口設置為VLAN1以便管理交換機。將24號端口設置為中繼線路。     VLAN的劃分采用一般方法即可,這裡需要強調的是中繼線路的配置:     Cisco2924#conf t (進入全局配置模式)     Cisco2924(config)#interface fastEthernet0/24 (進入24號端口配置模式)     Cisco2924(config-if)#switchport mode trunk (將24號端口設置為中繼模式)     Cisco2924(config-if)#switchport trunk encapsulation dotlq (將數據幀的封裝格式設置為802.1Q,缺省為Cisco專用的isl。)     Cisco2924(config-if)#switchport trunk allowed vlan remove vlan-list (將不需要進行VLAN中繼的VLAN列表刪除,如果是全部,可以用all參數。)     Cisco2924(config-if)#switchport trunk allowed vlan add vlan-list 1—13 (將1—13號VLAN加入到VLAN中繼 列表。)     三、Linux系統(Gataway)上的VLAN配置:     1、編譯內核,使內核支持802.1Q VLAN。     下載Linux2.4.20內核:http://www.kernel.org/pub/linux/kernel/v2.4/linux-2.4.20.tar.bz2     cp linux-2.4.20.tar.bz2 /usr/src     tar -jxvf linux-2.4.20.tar.bz2     ln -s linux-2.4.20 linux     cd linux     make menUConfig     Networking options ---> 802.1Q VLAN Support (可以編譯為模塊或編譯進內核。)     ………………     編譯完成後啟用新內核。     2、VLAN的配置     下載VLAN配置工具軟件:http://www.candelatech.com/~greear/vlan/vlan.1.7m.tar.gz     tar -zxvf vlan.1.7m.tar.gz     cd vlan     cp vconfig /usr/sbin     注: 如果需要支持基於MAC地址劃分的VLAN,需要給內核打補丁(vlan.1.7m.tar.gz中有),並將macvlan_config拷貝到/sbin下,用macvlan_config命令來進行VLAN配置。     (1)、創建VLAN10、VLAN12、VLAN13     vconfig add eth0 10     vconfig add eth0 12     vconfig add eth0 13     (2)、為接口設置IP地址:     ip address add 192.168.5.3/28 dev eth0.12 (DMZ區域的網關)     ip address add 192.168.10.1/24 dev eth0.13 (Classroom的網關)     ip address add 192.168.9.1/27 dev eth0.10 (office的網關)     ip link set dev eth0.12 up (啟用設備)   ip link set dev eth0.10 up   ip link set dev eth0.13 up     四、配置撥號     1、創建Office的撥號網絡:     (1)創建撥號腳本文件:/etc/ppp/dialisp1     #!/bin/sh     /usr/sbin/pppd /dev/ttyS0 57600 connect '/usr/sbin/chat -f /etc/ppp/chat95788' login user 95788 mru 1500 mtu 1500 crtscts file /etc/ppp/options.pstn_isp1     (2)創建撥號用的會話文件:/etc/ppp/chat95788     "" at   OK atm3   OK atdt95788   CONNECT   (3)、創建撥號用的會話文件:/etc/ppp/options.pstn_isp1     local   nodefaultroute   noauth   login   user 95788   mru 1500   mtu 1500   crtscts   updetach     注:由於有多個撥號,不能獲取缺省路由,所以有nodefaultroute。     2、創建Classroom的撥號網絡:     (1)創建撥號腳本文件:/etc/ppp/dialisp2     #!/bin/sh     /usr/sbin/pppd /dev/ttyS1 57600 connect '/usr/sbin/chat -f /etc/ppp/chat9_95788' login user 95788 mru 1500 mtu 1500 crtscts file /etc/ppp/options.pstn_isp2     (2)創建撥號用的會話文件:/etc/ppp/chat9_95788     "" at   OK atm3   OK atdt9,,95788   CONNECT     注:該電話需要撥9字頭       (3)、創建撥號用的會話文件:/etc/ppp/options.pstn_isp2     local   noauth   login   user 95788   nodefaultroute   mru 1500   mtu 1500   crtscts   updetach     五、創建VPN(衛星)撥號腳本:     1、下載Linux下的VPN客戶端軟件:http://pion.xs4all.nl/~elf/pkg/pptp-linux-1.1.0.tar.gz     解壓後將pptp文件拷貝到/usr/sbin下。     2、下載衛星卡的Linux驅動程序:     3、創建office的pptp撥號腳本:/etc/ppp/dialpptp1     ip route add 210.12.254.4 dev ppp0 (x.x.x.x 為ISP提供的VPN服務器地址,該命令設置訪問x.x.x.x的路由。)     sleep 2     /usr/sbin/pptp 210.12.254.4 file /etc/ppp/options.pptp1 (建立PPTP連接)     /etc/ppp/options.pptp1為建立office的VPN連接的選項文件,其內容如下:     local   user username   +chap   remotename 210.12.254.4   noauth   mru 1400   mtu 1400   updetach     注:由於在PPTP內還要對數據進行封裝,包頭會占去一定的字節,所以其mru 和 mtu值要比ppp的小。       4、創建Classroom的pptp撥號腳本:/etc/ppp/dialpptp2     ip route add x.x.x.x dev ppp2 (x.x.x.x 為ISP提供的VPN服務器地址,該命令設置訪問x.x.x.x的路由。)     sleep 2     /usr/sbin/pptp x.x.x.x file /etc/ppp/options.pptp2 (建立PPTP連接)       /etc/ppp/options.pptp2為建立office的VPN連接的選項文件,其內容如下:     local   user username   +chap   remotename x.x.x.x   noauth   mru 1400   mtu 1400   updetach     5、進行撥號測試:     注意撥號的先後順序。     六、設置路由策略:     1.設置路由表名稱:     編輯/etc/iproute2/rt_tables文件,在文件的尾部加入下面的兩行:     100 classroom (將編號為100 的路由策略命名為classroom)     110 office (將編號為110的路由策略命名為office)     2.設置路由:     (設置教室的路由表)   ip route add 192.168.5.0/28 dev eth0.12 table classroom     (設置辦公室的路由表)   ip route add 192.168.5.0/28 dev eth0.12 table office       (設置路由策略)   ip rule add from 192.168.9.0/27 table office (來自192.168.9.0/27 的數據包走 office 表)   ip rule add from 192.168.10.0/24 table classroom (來自192.168.10.0/24 的數據包走 classroom 表)   ip rule add to 192.168.9.0/27 table main (去往192.168.9.0/27 的數據包走 main 表)   ip rule add to 192.168.10.0/27 table main (去往192.168.10.0/27 的數據包走 main 表)     3.設置缺省路由:     根據前面的描述,我們想要教室和辦公室分別使用不同的Modem上網,因此我們為classroom和office表設置不同的缺省路由。     ip route add default dev ppp1 table offcie     ip route add default dev ppp3 table classroom     (注:ppp1為基於ppp0的 VPN 連接,ppp3為基於ppp2的 VPN 連接。)     一切已OK,現在的事情就是進行NAT設置及腳本的整理了,至於說分時段上網,可以通過crond來進行控制。     將上面的幾個執行腳本整理如下:1、劃分VLAN的腳本,以及本地路由和路由策略需要開機就執行,將他放入/etc/rc.local內:   /sbin/ip addr add 0.0.0.0 dev eth0   /sbin/ip link set dev eth0 up     /sbin/vconfig add eth0 10   /sbin/vconfig add eth0 12   /sbin/vconfig add eth0 13     /sbin/ip route add 192.168.5.0/28 dev eth0.12 table classroom   /sbin/ip route add 192.168.5.0/28 dev eth0.12 table office     /sbin/ip rule add from 192.168.9.0/27 table office   /sbin/ip rule add from 192.168.10.




Copyright © Linux教程網 All Rights Reserved