zoukankan      html  css  js  c++  java
  • ARM Linux系统使用双网口的设置方法

    使用双网口有两种情况,以下以MYD-AM335X为例,说明如何同时使用开发板的两个网口。
    第一种:不同网段
    如果两个网口配置成不同网段,那就很简单,分别把两个网口配置成对应的IP地址,比如eth0连接到路由器上(网关192.168.1.1),eth1连接到本地电脑上(网关169.254.1.1),那么,配置好eth0和eth1的IP地址就可以了:
    1
    2
    ifconfig eth0 192.169.1.100 up
    ifconfig eth1 169.254.1.100 up

    在开发板上,通过分别 PING 路由器上其他电脑,以及本地PC的IP地址可以验证是否已经连通:
    1
    2
    ping eth0 192.169.1.99 (路由器上某台电脑 IP)
    ping eth1 169.254.1.99 (本地电脑 IP)


    第二种:相同网段
    注意:这个方法暂未验证通过,谨慎使用!
    1)配置两个网卡的IP地址为静态IP,
    1
    vi /etc/network/interfaces

    输入如下内容:
    01
    02
    03
    04
    05
    06
    07
    08
    09
    10
    11
    12
    13
    #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


    保存配置信息并重新启动网卡,使配置生效:
    1
    /etc/init .d /networking restart

    或者
    1
    /etc/init .d /S40network restart

    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命令来观察路由情况: 
    1
    2
    3
    4
    5
    6
    7
    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


    通过以下命令可以看到网口的网关:
    1
    2
    netstat –r
    ip route show # route -n



    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
  • 相关阅读:

    暴力求解/数学问题
    Leetcode207. Course Schedule
    Balanced Team
    由先序和中序求后序
    Median String
    树的同构
    uva 202
    整除光棍
    阅览室
  • 原文地址:https://www.cnblogs.com/ITGUANCHAZHE/p/14319793.html
Copyright © 2011-2022 走看看