XX校校園網實現(VLAN及策略路由的實現)

XX校校園網實現

一、網絡拓撲圖(附件所示)及網絡規劃:


    交換機爲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 --->;<M>; 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.0/24 table classroom 
/sbin/ip rule add to 192.168.9.0/27 table main 
/sbin/ip rule add to 192.168.10.0/27 table main 

2、辦公室的撥號及缺省路由設置/etc/ppp/dialisp1
/usr/sbin/pppd /dev/ttyS0 57600 connect '/usr/sbin/chat -f /etc/ppp/chat95788' login user 95788 crtscts file /etc/ppp/options.pstn_isp1 

sleep 5
/sbin/ip route add 210.12.254.4 dev ppp0

sleep 2
/usr/sbin/pptp 210.12.254.4 file /etc/ppp/options.pptp1 

sleep 5
/sbin/ip route add default dev ppp1 table office

3、辦公室的撥號及缺省路由設置/etc/ppp/dialisp2
/usr/sbin/pppd /dev/ttyS1 57600 connect '/usr/sbin/chat -f /etc/ppp/chat95788' login user 95788 crtscts file /etc/ppp/options.pstn_isp2 

sleep 5
/sbin/ip route add 210.12.254.4 dev ppp2

sleep 2
/usr/sbin/pptp 210.12.254.4 file /etc/ppp/options.pptp2 

sleep 5
/sbin/ip route add default dev ppp3 table classroom

要位辦公室撥號,執行/etc/ppp/dialisp1即可,要爲教室撥號,執行/etc/ppp/dialisp2即可。

NAT及cron部分希望大家參考其他資料。

拓補圖

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章