设为首页收藏本站
查看: 23564|回复: 2

ARM Linux系统使用双网口的设置方法

[复制链接]

231

主题

64

回帖

2145

积分

管理员

积分
2145
玉米糊 发表于 2013-7-17 15:55:08 | 显示全部楼层 |阅读模式
使用双网口有两种情况,以下以MYD-AM335X为例,说明如何同时使用开发板的两个网口。
第一种:不同网段
如果两个网口配置成不同网段,那就很简单,分别把两个网口配置成对应的IP地址,比如eth0连接到路由器上(网关192.168.1.1),eth1连接到本地电脑上(网关169.254.1.1),那么,配置好eth0和eth1的IP地址就可以了:
[mw_shl_code=bash,true]
ifconfig eth0 192.169.1.100 up
ifconfig eth1 169.254.1.100 up[/mw_shl_code]
在开发板上,通过分别 PING 路由器上其他电脑,以及本地PC的IP地址可以验证是否已经连通:
[mw_shl_code=bash,true]
ping eth0 192.169.1.99 (路由器上某台电脑 IP)
ping eth1 169.254.1.99 (本地电脑 IP)[/mw_shl_code]

第二种:相同网段
注意:这个方法暂未验证通过,谨慎使用!
1)配置两个网卡的IP地址为静态IP,
[mw_shl_code=bash,true]vi /etc/network/interfaces[/mw_shl_code]
输入如下内容:
[mw_shl_code=bash,true]
#iface eth0 inet dhcp
auto eth0
iface eth0 inet static
        address 192.168.1.250
        netmask 255.255.255.0
        gateway 192.168.1.1

#iface eth1 inet dhcp
auto eth1
iface eth1 inet static
        address 169.254.1.250
        netmask 255.255.0.0
        gateway 169.254.1.1[/mw_shl_code]

保存配置信息并重新启动网卡,使配置生效:[mw_shl_code=bash,true]/etc/init.d/networking restart[/mw_shl_code]
或者[mw_shl_code=bash,true]/etc/init.d/S40network restart[/mw_shl_code]
2)设置路由表
使用route命设置第一块网卡eth0的路由表:
route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0
设置第二块网卡eth1的路由表:
route add -net 169.254.1.0 netmask 255.255.0.0 dev eth1
使用route命令来观察路由情况:
[mw_shl_code=bash,true]
route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         169.254.1.1     0.0.0.0         UG    0      0        0 eth1
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
169.254.0.0     *               255.255.0.0     U     0      0        0 eth1
192.168.1.0     *               255.255.255.0   U     0      0        0 eth0[/mw_shl_code]

通过以下命令可以看到网口的网关:[mw_shl_code=bash,true]netstat –r
ip route show# route -n[/mw_shl_code]


3.增加路由规则
# ip route flush table tel
# ip route add default via 114.80.0.3 dev eth0 src 114.80.0.4 table tel
# ip ruleadd from 114.80.0.4 table tel此处是设置电信的网关,并可实现让电信的资源访问只从eth0网卡出去# ip route flush table cnc
# ip route add default via 112.65.0.1 dev eth1 src 112.65.0.2 table cnc
# ip rule add from 112.65.0.2 table cnc此处是设置联通的网关,并可实现让联通的资源访问只从eth1网卡出去
4.配置networking启动脚本文件 在结尾exit 0之前增加如下内容
# vi /etc/init.d/networkingip route flush table tel
ip route add default via 114.80.0.3 dev eth0 src 114.80.0.4 table tel
ip rule add from 114.80.0.4 table telip route flush table cnc
ip route add default via 112.65.0.1 dev eth1 src 112.65.0.2 table cnc
ip rule add from 112.65.0.2 table cncexit 0
5,退出并重启网络
# /etc/init.d/networking restart此时再测试机器网络情况,就会发现电信和联通的地址都可以正常访问了。此方法还可以实现让从电信IP过来的请求按照电信路由返回,从网通IP过来的请求从网通路由返回。补充:网上有些大神说如果服务器重启,或者网络服务重启,上述的路由规则就失效了,所以你需要把上面这段命令写入系统启动脚本和网络启动脚本如果是ubuntu/debian,系统启动脚本是/etc/rc.local
如果是RedHat/centos,系统启动脚本是/etc/rc.d/rc.local如果是ubuntu/debian,网络启动脚本是/etc/init.d/networking
如果是RedHat/centos,网络启动脚本是/etc/rc.d/init.d/network如果是MYD-SAM9X5开发板,系统启动脚本是/etc/rc5.d/对于系统启动脚本本次并没有做更改只是更改了网络启动脚本,有兴趣的同学可以测试下。
本文出自 “longWind” 博客,请务必保留此出处http://longwind.blog.51cto.com/419072/806302







回复

使用道具 举报

0

主题

2

回帖

13

积分

新手上路

积分
13
百度采集发布 发表于 2014-9-14 11:06:03 | 显示全部楼层
行,有意义,我顶 谢谢您了











网站流量小!!!网站相关性差!!!百度收录少!!!这一切都不是个事儿!!!因为有百度采集发布软件 V.14.09.18 正式版发布 下载地址:http://www.aspcms.org/bcf.rar
回复 支持 反对

使用道具 举报

0

主题

1

回帖

11

积分

新手上路

积分
11
top域名抢注 发表于 2014-11-16 23:17:11 | 显示全部楼层
ding呀 支持












.top域名抢注 .top域名注册 .top域名申请 .top域名价格
http://www.4008844442.net/reg/domainapp.asp?productcode=d685
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录

本版积分规则

Archiver|手机版|小黑屋|米尔科技论坛   

GMT+8, 2024-11-23 00:47 , Processed in 0.057585 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表