flyonok

统计

留言簿(8)

ACE

book

boost

bsd

c study

c++

code download

codeblock

computer clound

Eclipse

embed system

erlang

ET++

gtk

ic card

java

KDE

libevent

linux

linux--MM

mysql

network education

one card

oracle

pcap relation

php

powerbuilder

python

QT

software config

software test

SQL server

UML

wireless

wxwidgets

陈宾

阅读排行榜

评论排行榜

Linux+bridge做透明网桥

作者:小飞龙
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

posted on 2011-03-24 13:18 flyonok 阅读(2065) 评论(0)  编辑 收藏 引用 所属分类: linux