基于Linux的三层交换机

基于Linux的三层交换机

  首先,安装一个基本的LINUX操作系统,我用的是Debian testing版,从: http://www.kernel.org/ 下载内核源码,如果你现在就可以上网可以直接执行:aptitude install kernel-source-2.6.8(testing是2.6的内核),拷贝得到的文件:kernel-source-2.6.8.tar.bz2到:/usr/src目录下,执行:tar jvxf  kernel-source-2.6.8.tar.bz2 得到新目录:kernel-source-2.6.8,进入目录kernel-source-2.6.8。

  开始编译内核,开始前一定记得要把:kernel-package ncurses-dev fakeroot wget bzip2 make
patch安好,不然编译不能正常进行,要报错,然后进行内核编译把802.11Q加进去。debian:/usr/src/kernel-source-2.6.8# make menuconfig 选中:Device DriversàNetworking supportàNetworking options中的全部选择:其中TCP/IP networking 、IP: multicasting、IP: advanced router、IP: policy routing、IP:use netfilter MARK value as routing key、IP:fast network address translation、IP:multicast routing、Network packet filtering、802.1d Ethernet Bridging、802.1Q VLAN Support、Forwarding between high speed interfaces须加入内核(选择为*)。另外一定记得把:File systems 里的EXT2和EXT3文件格式加入内核,不然系统启动不了可不要怪我。最后保存配置结果。

  执行:make 、make-kpkg clean 、make-kpkg –initrd –append-to-version=oursoft –revision=1.0 kernel_image。最后会在/usr/src目录下生成一个:kernel-image-2.6.8oursoft_1.0_i386.deb的安装文件,直接执行:dpkg –i kernel-image-2.6.8oursoft_1.0_i386.deb安装就可以了。重新启动系统选择新的内核kernel-image-2.6.8oursoft。

  安装基于Linux的VLAN划分工具:aptitude install vlan

  添加需要的VLAN(interface):vconfig add  eth1 200

  为刚才的VLAN(interface) 添加相应的IP地址:ifconfig eth1.200 192.168.200.1 netmask 255.255.255.0 up

  修改VLAN(interface)的MAC地址:ifdown eth1、ifconfig eth1.200 hw ether 00:05:5D:61:00:31、ifup eth1

  一个完整的VLAN(interface)添加成功,此功能相当于在三层交换机上执行:vlan 200、ip address 192.168.200.1 255.255.255.0

  在二层交换机上的配置

  二层交换机上的配置和以前一样,以AVAYA P334为例:set vlan 200、set port vlan 200 1/2、set trunk 1/1 dot1q、set port vlan-binding-mode 1/1 bind-to-configured,二层上配置完成了,把交换机的1号口与Linux的eth1相连,2号口直接连接一个客户机,并把客户机配置192.168.200.X/24的IP,以192.168.200.1为网关,现在就可以ping通192.168.200.1(Linux)了。

  其它功能说明

  在Linux上实现了三层交换机的功能后,我们再在上面开展更多的业务,如:DHCP,DNS,NAT,Raduis,策略路由,访问控制(ACL),P2P限制等。
没有你说的那么复杂吧!不过很详细!谢谢啦!