作者:小飞龙 Linux2.6.0内核 首先重新编译kernel,make menuconfig..... (注一般2.6以上的都默认支持)注意,除了要把该编译进去的驱动编进去(象NIC什么的)还要把最重要的iptables给enable起来,进入NetworkOptions,选中Network Packet filtering (replaces ipchains),这样就会打开IP:Netfilter Configuration -->; 子菜单,进入,选中里面所有的选项,然后回到NetworkOptions菜单,选中“802.1d Ethernet Bridging” 和 “netfilter (firewalling)support”两个选项(一看就知道很重要。) 退出,开编。
make make modules_install make install
重起,如果正常,开始下一步,tar –xzvf bridge-utils-1.1.0.tar.gz. cd ./bridge-utils-1.1.0 make make install(编译bridge并安装,具体的安装目录可在make文件生成时指定。) 完毕后可以先试试bridge的基本命令: brctl addbr mybridge (创建bridge mybridge,然后用ifconfig查看会发现多了一个mybridge端口) brctl addif mybridge eth0 brctl addif mybridge eth1 (把eth0和eth1包含到mybridge中)
然后需要对各端口做以下动作 ifconfig eth0 0.0.0.0 promisc ifconfig eth1 0.0.0.0 promisc(打开混杂模式) ifconfig mybridge up(启动网桥) 这时桥接即已成功,从router和局域网转发过来的消息开始通过机器,这时你会发觉满屏的tcp/ip转发消息让你无法下手,硬盘也狂转,这是syslogd和klogd做的怪,log的priviledge设得太低,改掉它。telnet进入机器(这时你只能telnet,console上已经泛滥成灾。)kill掉syslogd和klogd,在/etc/syslog.conf中屏蔽掉*.info至/var/log/messages的rules,并修改/etc/init.d/syslog,在daemon klogd 一项后加上-2 -c4(提高klogd的消息转发级别),重起syslogd,哈哈,整个世界清净了!!! 可以用以下语句为桥接配ip ifconfig mybridge 192.168.1.10 netmask 255.255.255.0 |