`
阅读更多

第一部分:概念原理
[网桥]是用于连接ISO第二层网络的设备,它只提供以太网层次的连接,对于
之上的TCP/IP等协议来说是完全透明的,你可以把它理解为交换机,实际上交换
机也是一种网桥的实现。在Linux上配置网桥可以说就是把机器当作交换机来用。
比如我现在的情况,在公司里使用两台电脑,但是我的位子上之有一条网线,于
是我在台式机上装了双网卡,配置了网桥,一块网卡连接公司网络,一块通过双
机直连线连接我的笔记本电脑。两台机器都有公司内部的固定IP地址,通过公司
网关连入Internet。台式机对于笔记本电脑来说就是一个交换机

Linux从2.4内核开始就非常好的支持了网桥,并且还支持生成树协议等高级应用。
加入网桥的物理端口将不分配IP地址,只有网桥虚拟端口可以分配IP地址。虚拟
端口可以完全当作一个普通端口来使用,并且支持iptables的各种应用和路由
配合ebtables,还可以支持二层网络包过滤、转发等高级应用。可以说Linux配
合相应的工具完全可以提供高端交换机和路由器的各种功能、甚至他们没有的功
能,当然了,受到PCI总线的限制,效率上一定是不如的


第二部分:安装配置
1,安装rpm包
装好以后,bridge-utils工具包就可以使用了
输入brctl(回车)可以看到使用帮助,比较简单,由于我们主要使用系统脚本来设置网桥,所以基本不会使用这个命令,最多使用brctl show来查看网桥的状态
详细信息可以去看/usr/share/doc/bridge-utils-1.0.4中的文档

2,给文件/sbin/ifup打补丁
patch -p0 /sbin/ifup < ifup.patch

3,在/etc/modprobe.conf文件中加入:
alias bri0 bridge
bri0是你给bridge端口起的名字,也可以叫别的,也可以有多个

4,修改/etc/sysconfig/network-scripts/目录中的物理网卡配置文件
ifcfg-eth0等
在第2行开始加入如下两行:
TYPE=Bridge
BRIDGE=bri0
这是表明该物理网卡所属的bridge的名字,根据自己的实际情况填写

5,将文件ifcfg-bri0复制到/etc/sysconfig/network-scripts
chown root:root ifcfg-bri0
chmod 755 ifcfg-bri0
根据自己的需要进行相应修改
注意这个文件实际是bridge虚拟端口的配置文件,可以把bri0虚拟成一块普通的
网卡,此文件中千万不能出现TYPE和BRIDGE这两个变量的定义,不然bri0无法获
得ip地址,如果你有多个bridge端口可以复制多份此文件并且改成相应的名字。
BVI这个TYPE是我自己定义的,并对应ifup脚本中修改的部分,用于初始化
bridge虚拟端口,不要擅自更改

6,重启网络服务
/etc/init.d/network restart
类似如下显示,表明你的网桥已经顺利运行了,你可以随时使用ifup/ifdown等工具来开关虚拟端口和任何一个物理端口
正在关闭接口 eth0:                                             [完成]
正在关闭接口 eth1:                                             [完成]
正在关闭接口 bri0:                                             [完成]
正在关闭回环接口:                                              [完成]
正在设置网络参数:                                              [完成]
加载回环接口:                                                  [完成]
正在打开接口 bri0:                                             [完成]
正在打开接口 eth0:                                             [完成]
正在打开接口 eth1:                                             [完成]

7,其他
如果你的ifup版本实在太老打了补丁仍无法顺利运行,那么就直接使用包里带的这个ifup脚本,把他复制到/sbin/目录
chown root:root /sbin/ifup
chmod 755 /sbin/ifup

8,后记
其实安装好bridge-utils工具包以后,网桥功能已经可以正常使用,在启动脚本
(如/etc/profile)中添加若干brctl命令行和ifconfig命令行就可以完成网桥
接口的配置和IP设置工作
之所以要采取本文所列的一系列方法其主要目的是为了让网桥功能跟系统网络服
务紧密结
合,使bridge虚拟端口能够像一个标准的网络接口一样通过network服务启动,
通过ifuo/ipdown等工具来控制,并且比命令行配置方式具有更大的灵活性

在尝试配置的过程中,遇到最大的问题主要来自ifup脚本对端口的启动顺序
因为b在e前面,bri0最先进入配置流程,这个时候eth等端口还没有开启,桥
bri0还没有定义,因此ifup无法给他配置IP。因此我自己定义了BVI(Bridge
Virtual Interface)这种类型,并且在ifup脚本中增加了一个判断,使得bri0一
进入配置流程就会先被定义。如果我们起的端口名字不叫bri0而叫z什么什么的
话,恐怕就不会有这个问题了^o^

之所以会作这个东西是因为我自己正好有这样一个需求,并且因为网络的原因公
司机器安装的是Mandrake10.1,不像debian那样对bridge支持的好,看了一下自
带的文档只有vlan和bond的,因此才会自己动手添加对bridge的支持。
bridge-utils工具包的源码来自http://bridge.sourceforge.net ,在RH9.0下
打包成rpm

分享到:
评论

相关推荐

    linux howto中文合集

    这个是合集~一般是这里最全的了 另外加的 PDF是英文的 .为 GCC4.1的HOWTO &lt;br&gt;目录 &lt;br&gt;ADSM-Backup-html&lt;br&gt;Advocacy&lt;br&gt;Automount-html&lt;br&gt;Battery-Powered-html&lt;br&gt;BootPrompt-HOWTO&lt;br&gt;Bridge-...

    linux-howtos

    2. **网络配置**:Linux Howtos会详细讲解如何配置网络接口,设置静态或动态IP地址,配置DNS解析,以及如何建立网络连接,如PPP、DHCP、Bridge、NAT等。 3. **服务器管理**:对于那些想用Linux搭建服务器的人来说,...

    how to solve it

    Polya reveals how the mathematical method of demonstrating a proof or finding an unknown can be of help in attacking any problem that can be "reasoned" out - from building a bridge to winning a game ...

    Z-Wave Bridge User Guide

    Z-Wave Bridge User Guide This document describes how to use the PC based Z-Wave Bridge application with a Z-Wave module using Bridge Controller serial API.

    Specification by Example - How Successful Teams Deliver the Right Software

    This approach aims to bridge the communication gap between business stakeholders and development teams, ensuring that the software developed meets the intended business needs and objectives....

    Android代码-bridge

    Bridge A library for avoiding TransactionTooLargeException during state saving and restoration. Contents Motivation Setup Clearing Data Install How Does It Work Limitations Testing License Javadoc ...

    JavaBridge.jar php-servlet.jar php-script.jar

    JavaBridge.jar php-servlet.jar php-script.jar ... PHP/Java Bridge的JavaBridge.jar、php-servlet.jar和php-script.jar复制到tomcat的lib...http://www.laokboke.net/2011/12/04/how-to-deploy-php-app-to-tomcat/

    The Software Project Manager's Bridge to Agility

    When software development teams move to agile... They show experienced project managers how to successfully transition to agile by refocusing on facilitation and collaboration, not "command and control.

    64bit CentOS6安装、配置Xen4.1.2

    参考Steve的“Xen on RHEL6, Scientific Linux 6, CentOS 6 howto”来安装Xen。这个教程提供了一个详细的步骤指南,按照它来操作通常能够顺利完成安装。 3. **配置Xen** 在安装完成后,您可以参照RHEL6Xen4...

    How to integrate BIEE with Oracle SSO Portal.doc

    - BIEE 10.1.3.2 版本,已安装Advanced Security选项,它包含Web Bridge servlet、JMX BeanServer和Oracle BI Publisher组件,这些组件在Oracle Application Server 10.1.3上运行,而不是默认的OC4J。 - Oracle ...

    英文原版-Professional Android Sensor Programming 1st Edition

    Whether providing hands-free directions or checking your blood pressure, Professional Android Sensor Programming shows how to turn possibility into reality.The authors provide techniques that bridge ...

    How to Install Open vSwitch on Linux.

    - **ingress policing**:若要启用入站流量限制,需要在内核配置中开启相应的选项(NEED_BRIDGE_POLICE等)。 - **Debian包**:如果你的系统是基于Debian的,也可以通过`dpkg-buildpackage`构建Debian包进行安装。 ...

    Practical Augmented Reality

    This unique book is an easy-to-follow guide on how to do it. Guides you through the emerging technology of Augmented Reality (AR) Shows you how to use 3D data with the Processing programming ...

    Android代码-chromeadb

    How to install Install node.js $ npm install -g bower $ bower install Open chrome://extensions in your Chrome. Check Developer mode Select Load unpacked extensions... Open $CHROMEADB_HOME/src How to...

    How to support recovery system in emmc

    - **ADB守护进程** (`adbd`):提供Android Debug Bridge服务,用于设备调试。 - **UI图片目录** (`images/`):存储界面相关的图形资源。 - **设备目录** (`dev/`):包含设备驱动和硬件接口。 - **临时目录** (`tmp/`...

    七年级英语上册期末复习知识点新人教版

    正上方:There is a bridge over the river. - 超过:She is over 18 years old. - 横跨:The road runs over several rivers. 这些知识点构成了七年级英语上册期末复习的重点,理解并熟练运用它们对考试成绩至关...

    The Way of the Web Tester(Pragmatic,2016)

    This book will help you bridge that testing gap between your developers and your testers by giving your team a model to discuss automated testing, and most importantly, to coordinate their efforts. ...

    Professional.Android.Sensor.Programming

    Whether providing hands–free directions or checking your blood pressure, Professional Android Sensor Programming shows how to turn possibility into reality.The authors provide techniques that bridge ...

Global site tag (gtag.js) - Google Analytics