设为首页收藏本站language 语言切换
查看: 1780|回复: 2
收起左侧

某高校校园网实现--VLAN及策略路由的实现

[复制链接]
发表于 2010-8-23 15:50:21 | 显示全部楼层 |阅读模式
 一、网络拓扑图(附件所示)及网络规划:
   1.jpg
  交换机为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.
发表于 2013-4-20 10:05:26 | 显示全部楼层
沙发 2013-4-20 10:05:26 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2022-2-24 20:31:38 | 显示全部楼层
#在这里快速回复# 每天进步一点
板凳 2022-2-24 20:31:38 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-3 13:00 , Processed in 0.060456 second(s), 13 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表