桥接器的运作 mini-Howto

2008-02-23 07:23:31来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

作者: Christopher Cole, cole@lynkmedia.com
译者: Mile Yeh mile@mail.timenet.net
v1.10, 13十一月 1997 


--------------------------------------------------------------------------------
这文件描述如何去设定一个乙太网路桥接器.什麽是一个乙太网路桥接器?一个乙太网路桥接器是一个设备它可以控制在一个子网路之内的资料封包去试图减少网路的大量流量. 一个桥接器是通常安放的在两组分开的电脑群组之间使电脑自己在内部沟通自已,而不是频繁和其他的群组的电脑沟通.一个好的例子的是想想一群的麦金塔和一群的 Unix 机器.这些组别的机器两个群组都倾向於他们自己和自已的机器十分繁忙的沟通, 他们在网路上产生的通讯流量使其他机器试著和另外一个沟通时的造成碰撞.一个桥接器是放的在这些电脑组群之间.桥接器的工作是然後检查那目的地的数据封包一个一次而且决定要不要传输封包到那乙太网区段另一边.结果是变成一个更快的,更安静,更少的碰撞的网路. 
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

1. 设定

取得 ``桥接器配置'': 
ftp://shadow.cabi.net/pub/Linux/BRCFG.tgz
取得和阅读 ``Multiple ethernet'' HOWTO: 
ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini/Multiple-Ethernet
使多个乙太网路设备在你的机器运作照著加入这行到你的 /etc/lilo.conf, 和重新执行 lilo: 

append = "ether=0,0,eth1"
        

如果你在你的桥接器上有三张界面卡,使用这些行取代上面: 
append = "ether=0,0,eth1 ether=0,0,eth2"
        

靠加入更多的乙太陈述可以找到更多的界面. 预设上一个传统的 Linux 核心只侦测一张独一的乙太网路卡, 和当一个被找到侦测就会停止. 上面所附加的陈述告诉核心在第一个被找到之後继续侦测去找到更多乙太网路设备. 

另一个方法,可以使用启动变数来取代: 

linux ether=0,0,eth1
        

或者, 有三个界面,使用: 
linux ether=0,0,eth1 ether=0,0,eth2
        


重新编译那核心启动BRIDGING功能. 
一个桥接器应没有一个的 IP 地址. 它可以有一个,但是一个平常的桥接器不需要一个 IP 地址. 从你的桥接器上移除 IP 地址,到 /etc/sysconfig/network-scripts/ (对於一个 RedHat系统) 和拷贝 ifcfg-lo0到 ifcfg-eth0 & ifcfg-eth1. 在这两个乙太档案中,改变那行包含 ``DEVICE=lo'' to ``DEVICE=eth0'' 和 ``DEVICE=eth1''. 别的 Linux distribution 也许和这个不同,自已动手做你想要的! 如果桥接器上有超过两个界面卡, 确定也使设定符合这些界面. 
重新启动,执行那包含桥接器功能的核心, 另外也查明确认一个 IP 地址没有指定到这网路界面卡. 
一次系统是备份, 把乙太网路卡设定在纷乱(promiscuous)的模式, 他们将靠它的界面监看每一个通过的封包: 
ifconfig promisc eth0 ; ifconfig promisc eth1
        

连接到网路区段的全部的界面卡被桥接器分开进入 promiscuous(纷乱) 的模式. 
启动桥接器使用 brcfg程式: 
brcfg -ena
        

检验每一个界面卡有不同的交通流量: 
tcpdump -i eth0      (在一个视窗)
tcpdump -i eth1      (在另一个视窗)
        

执行一个 sniffer (监看器) 或者 tcpdump 在另外的机器上去检验桥接器正确地分开区段. 

--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

2. 一般的问题


Question
我得到这个讯息 

ioctl(SIOCGIFBR) failed: Package not installed
        

这是什麽意思? 
Answer
你的核心没有桥接器的能力. 取得到一个 2.0或者更後面的核心, 和重新编译启动桥接器功能的选项 BRIDGING. 


Question
机器在一边不能 ping 到另外一边! 

Answer

你有使用 ``brcfg -ena' 使桥接器运作'吗? (brcfg将说 ``bridging is ENABLED'') 
你有把界面放在 promiscuous(纷乱)的模式吗? (使用 ``ifconfig''命令. 那 ``PROMISC''参数应该是在两个界面卡上.) 
如果正在用 multiple-media 界面卡, 确定启动的是正确的是那一端. 你也许需要使用和网路界面卡附的 配置/设定 程式来做设定 . 

Question
我不能从桥接器上 telnet/ftp!为什麽? 

Answer
这是因为没有 IP 地址指定到任何的桥接器的界面卡.一个桥接器是一个网路的透通部分. 


Question
在设定路由方面我需要做什麽? 

Answer
无! 整个的路由资料是由核心的桥接器的码所掌握. 靠桥接器看见那乙太网路地址他们是被学习, 在测错模式下使用 brcfg程式: 

brcfg -deb
        


Question
那桥接器看起来有运作,但是为什麽 ``traceroute'' 没有显示那桥接器是路径的一个部分? 

Answer
由於桥接器当然的功能, ``traceroute''将不显示桥接器当作路径的一部分.一个桥接器是网路的一个透通组件. 


Question
IP_FORWARD 是否必要编译到核心中呢? 

Answer
不.核心中的桥接器的码照料封包传送. IP_FORWARD对於一个 gateway(通路闸)它要有 IP 地址指定到它的界面. 


Question
根据那 ``brcfg''程式显示,为什麽对於埠 1和埠 2 实体的乙太网路地址是相同的? 他们应该是不同的吗? 

Answer
不.一个桥接器的每一埠是故意地是由桥接器的码指定那相同的实体的乙太网路地址. 


Question
当在核心中执行的一个 (make config)建造设定,桥接器的选项没有出现 .它是如何启动的呢? 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Linux 终端机下的彩色显示

下一篇:使用电池供电的 Linux Mini-HOWTO