BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #948同步于 2008/7/20
Embedded_System机器人发帖

linux系统双网卡路由设置[zz]

yihang
2008/7/20镜像同步0 回复
Linux环境下双网卡主机路由配置 一、环境: 三台直接相连的计算机主机如图 PC1PC2PC3 其中PC2上有两块网卡eth0、eth1,分别与PC3、PC1相连 ------代表网线 二、需求: 将PC2配置为路由器模式,用来在PC1、PC3之间转发报文 三、方法: 将三台主机按照环境所要求用交叉线直接连网后,为三台主机分配网段并配置IP地址。 网段及IP地址分配如下: 主机名 所在网段 分配IP 网关 PC1: 192.168.2.0/24 192.168.2.2/24 192.168.2.1 PC2: 192.168.2.0/24 192.168.2.1/24 '与PC1相连的网卡的配置' eth1 192.168.1.0/24 192.168.1.1/24 '与PC3相连的网卡的配置' eth0 PC3: 192.168.1.0/24 192.168.1.2/24 192.168.1.1 按照上表所示分别将主机IP地址配置好,其中要注意的是,要想使PC2具有报文转发功能,在PC2 上检查/proc/sys/net/ipv4/ip_forward中的值是否为1 命令: #more /proc/sys/net/ipv4/ip_forward 如果显示其值不为1而是0 输入以下命令: #echo '1' > /proc/sys/net/ipv4/ip_forward 打开IP转发功能 PC2中的其它配置: 为PC2添加路由,命令: #route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0 #route add -net 192.168.2.0 netmask 255.255.255.0 dev eth1 四、验证: PC1: ping网关 #ping 192.168.2.1 #ping 192.168.1.1 ping PC3: #ping 192.168.1.2 PC3: ping网关 #ping 192.168.1.1 #ping 192.168.2.1 pint PC1 #ping 192.168.2.2 五、Bug调试: 出错的原因主要集中在PC2两个地方 1.检查PC2是否允许IP报文转发(/proc/sys/net/ipv4/ip_forward的值是否为1) 2.路由设置是否正确(#route 回车查看) 本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/72447/showart_1071567.html 附: 如果eth0为192.168.10.123/255.255.255.0,eth1为192.168.20.231/255.255.255.0,则命令格式如下: #route add -net 192.168.10.0 netmask 255.255.255.0 dev eth0 #route add -net 192.168.20.0 netmask 255.255.255.0 dev eth1 上面的命令把发送给192.168.10.0网段的IP包交给eth0转发,把192.168.20.0网段的IP包交给eth1转发。如果还有可能有发送给其他目的IP的包,那么你肯能希望设置一个“默认网关”: #route add default gw 192.168.10.1 上面的命令把所有发送给其他目的IP的包都转发给192.168.10.1,而如何转发给192.168.10.1这个地址的规则已经在刚才的第一条命令中定义了(从eth0转发)。一般情况下,默认网关已经自动设置好了,不用重复设置。可以用route命令加-n参数进行检查。 如果要删除某一条,命令格式为: #route del -net 192.168.10.0 netmask 255.255.255.0 配置时的一种思路是把192.168.10.0网段路由至eth0,192.168.20.0网段路由至eth1,再设置默认路由。另一种思路是,只指定其中一个,然后把默认的0.0.0.0路由至另一个。其实效果一样,就是两种风格。 开启路由转发――echo 1 > /proc/sys/net/ipv4/ip_forward 自己一直缺乏网络知识,所以这点简单的东西却搞了一晚上,转过来希望有用
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。