• OpenWrt刷机后LAN口无法连通的问题



    【路由器开发板硬件固件配置】
    MTK双频:MT7620a + MT7612e
    内存:256 MB
    闪存:16 MB
    固件:MTK自带SDK中的OpenWrt固件(mtksdk-openwrt-2.6.36-v1.3-20140423-dff5cfbf.bin)
     
    【问题】
    路由器开发板刷机后,与PC无法ping通。PC与路由器开发板的LAN口相连,开发板和PC用ifconfig命令都可以查到IP。
    开发板:192.168.1.1(刷机后缺省配置)
    PC:192.168.1.11(通过手工配置)
     
    【分析】
    两端网口直连都无法ping通,先排查硬件问题,PC网口、开发板网口、网线均正常。再检查两端网口配置,PC网口配置无异常,开发板网口配置看起来也无异常。
     
    【解决】
    开发板网口的配置在/etc/config/network文件里。
    文件初始配置是这样的:
    config interface 'lan'
            option ifname 'eth0.1'
            option type 'bridge'
            option proto 'static'
            option ipaddr '192.168.1.1'
            option netmask '255.255.255.0'
            option ip6assign '60'
    
    config interface 'wan'
            option ifname 'eth0.2'
            option proto 'dhcp'

    查看网口信息

    [root@OpenWrt]ifconfig
    br-lan    Link encap:Ethernet  HWaddr 00:0C:43:76:20:77                        
              inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0       
              inet6 addr: fe80::20c:43ff:fe76:2077/64 Scope:Link                   
              inet6 addr: fd16:4e5b:1ca2::1/60 Scope:Global                        
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1                   
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0                   
              TX packets:14 errors:0 dropped:0 overruns:0 carrier:0                
              collisions:0 txqueuelen:0                                            
              RX bytes:0 (0.0 B)  TX bytes:1764 (1.7 KiB)                          
                                                                                   
    eth0      Link encap:Ethernet  HWaddr 00:0C:43:76:20:77                        
              inet6 addr: fe80::20c:43ff:fe76:2077/64 Scope:Link                   
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1                   
              RX packets:10 errors:0 dropped:0 overruns:0 frame:0                  
              TX packets:240 errors:0 dropped:0 overruns:0 carrier:0               
              collisions:0 txqueuelen:1000                                         
              RX bytes:786 (786.0 B)  TX bytes:89596 (87.4 KiB)                    
              Interrupt:3                                                          
                                                                                   
    eth0.1    Link encap:Ethernet  HWaddr 00:0C:43:76:20:77                        
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1                   
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0                   
              TX packets:5 errors:0 dropped:0 overruns:0 carrier:0                 
              collisions:0 txqueuelen:0                                            
              RX bytes:0 (0.0 B)  TX bytes:526 (526.0 B)                           
                                                                                   
    eth0.2    Link encap:Ethernet  HWaddr 00:0C:43:76:20:77                        
              inet6 addr: fe80::20c:43ff:fe76:2077/64 Scope:Link                   
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1                   
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0                   
              TX packets:226 errors:0 dropped:0 overruns:0 carrier:0               
              collisions:0 txqueuelen:0                                            
              RX bytes:0 (0.0 B)  TX bytes:87291 (85.2 KiB)  

    值得注意的是LAN口名称是'eth0.1',WAN口名称是'eth0.2'。这种eth0.x是啥意思呢?

     
    自己先尝试着修改配置文件中的网口配置,连通性测试结果如下:
     
     
    将eth0.1改为eth0就可以ping通,看来确实是名称的问题。
     
    跑到OpenWrt官网上看了看各种网口名称的介绍:network interface introduction。eth0表示物理网口,eth0.1表示vlan为1的逻辑网口。这下清楚了,LAN口配置为eth0.1会打上ID=1的VLAN头,因此和PC直连也无法通信。
     
    在PC端抓包确认,确实如此。
     
    注意:开发板每次修改网卡配置后需要重启网卡,命令:/etc/init.d/network restart
     
    扩展阅读:
     
  • 相关阅读:
    Transform.Find()
    GameObject.Find
    Python游戏
    绕X 轴 Y轴 Z轴旋转的结果
    旋转和平移 代码2
    <mvc:annotation-driven />注解意义
    SpringMvc环境搭建(配置文件)
    OpenSessionInViewFilter 的配置及作用
    org.springframework.web.util.IntrospectorCleanupListener的用途
    Web.xml配置详解之context-param
  • 原文地址:https://www.cnblogs.com/siikee/p/4194259.html
Copyright © 2020-2023  润新知