【路由器开发板硬件固件配置】
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 :0C::::
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:43ff:fe76:/ Scope:Link
inet6 addr: fd16:4e5b:1ca2::/ Scope:Global
UP BROADCAST RUNNING MULTICAST MTU: Metric:
RX packets: errors: dropped: overruns: frame:
TX packets: errors: dropped: overruns: carrier:
collisions: txqueuelen:
RX bytes: (0.0 B) TX bytes: (1.7 KiB) eth0 Link encap:Ethernet HWaddr :0C::::
inet6 addr: fe80::20c:43ff:fe76:/ Scope:Link
UP BROADCAST RUNNING MULTICAST MTU: Metric:
RX packets: errors: dropped: overruns: frame:
TX packets: errors: dropped: overruns: carrier:
collisions: txqueuelen:
RX bytes: (786.0 B) TX bytes: (87.4 KiB)
Interrupt: eth0. Link encap:Ethernet HWaddr :0C::::
UP BROADCAST RUNNING MULTICAST MTU: Metric:
RX packets: errors: dropped: overruns: frame:
TX packets: errors: dropped: overruns: carrier:
collisions: txqueuelen:
RX bytes: (0.0 B) TX bytes: (526.0 B) eth0. Link encap:Ethernet HWaddr :0C::::
inet6 addr: fe80::20c:43ff:fe76:/ Scope:Link
UP BROADCAST RUNNING MULTICAST MTU: Metric:
RX packets: errors: dropped: overruns: frame:
TX packets: errors: dropped: overruns: carrier:
collisions: txqueuelen:
RX bytes: (0.0 B) TX bytes: (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
 
扩展阅读:
 

OpenWrt刷机后LAN口无法连通的问题的更多相关文章

  1. Openwrt 刷机后配置WAN口,安装luci和设置中文、安装挂载USB存储。

    官方版本的ROM编译时时没有把luci和uhttpd打包进去的,所以,要ssh登录到路由器后手动安装,默认用户名root,密码是空. 如果你的路由器是挂载在其他路由下面的,DHCP可以获取到IP,能正 ...

  2. openwrt刷机后配置PPPOE上网方法

    参考下帖13#的方式: 如何编辑配置openwrt,来实现pppoe拨号上网? 但其中有一句代码有错误: option 'peerdns' '0',其中需将‘0’改为‘1’

  3. OpenWrt 路由器如何让 lan 口主机获得 ipv6 网络访问 -- 知乎

    本文转自知乎: OpenWrt 路由器如何让 lan 口主机获得 ipv6 网络访问? - mistforest的回答 - 知乎https://www.zhihu.com/question/29667 ...

  4. 【转】 怎么刷入BOOT.IMG(刷机后开机卡在第一屏的童鞋请注意)-------不错不错

    原文网址:http://bbs.gfan.com/android-3440837-1-1.html 之前呢,有好多机油问我关于刷机卡屏的问题,我解答了好多,但一一解答太费事了,在这里给大家发个贴吧.其 ...

  5. LinuxE2系统刷机后OSCAM安装与读卡器设置

    我也属于E2小白,最近才开始玩这个系统.从dinobot 4k+,到H7s,在到H5,各种E2机器都买了.刚开始入手的时候,怎么这么麻烦?慢慢的发现,烧新,玩E2也是一种乐趣,只不过最近困扰我的刷机后 ...

  6. OnePlus5刷机后一直检查更新

    大概是由于爱折腾,上一个手机是Nexus5,现在又是Oneplus5,闲来无事就爱刷机. 昨天看OnePlus官网的氧OS更新到Android9.0,于是又开启了刷机旅程. 显然这次没有之前那么顺利, ...

  7. MT7620a openwrt barrier_breaker编译后wan口dhcp无法获得地址

    前言 我司准备使用openwrt barrier_breaker版本做二次开发.在烧入固件后发现wan口,dhcp无法获得地址.经如下修改后,mt7620a的路由器可以正常获得地址. 修改dts文件 ...

  8. OpenWrt刷机

    http://blog.163.com/l1_jun/blog/static/14386388201441344612/ http://blog.chinaunix.net/uid-25073805- ...

  9. Jetson tk1 刷机后要做的几件事

    参考简书文章: http://www.jianshu.com/p/997ede860d74 1. 查看Jetson TK1 L4T版本 head -n 1 /etc/nv_tegra_release ...

随机推荐

  1. 北大ACM(POJ1006-Biorhythms)

    Question:http://poj.org/problem?id=1006 问题点:孙子定理 Memory: 248K Time: 0MS Language: C++ Result: Accept ...

  2. NSURLConnection、NSURLSession 补充

    一.大文件下载1.方案:利用NSURLConnection和它的代理方法1> 发送一个请求 // 1.URL NSURL *url = [NSURL URLWithString:@"h ...

  3. Tomcat 优化 java.lang.OutOfMemoryError: Java heap space 的解决方法

    Tomcat 优化 java.lang.OutOfMemoryError: Java heap space 的解决方法 java.lang.OutOfMemoryError: Java heap sp ...

  4. COM包装(COM Wrappers)

    为了实现传统的COM程序与.NET程序之间的相互调用,.NET提供了两个包装类:运行时可调用包装(runtime callable wrapper,RCW)和COM可调用包装(COM callable ...

  5. C++将类的构造函数、析构函数声明为private或者protected的用途

    如果将构造函数.析构函数声明为private或者protected,表示不能从类的外部正常调用构造和析构函数了. 这种用法的通常使用的场景如下: 1.如果不想让外面的用户直接构造一个类A的对象,而希望 ...

  6. .Net三维控件

    AnyCAD .Net三维建模和可视化控件为.Net 4.0开发者提供简单易用的三维建模.三维可视化和文件交换的API. 30天试用版下载: 1.  三维建模 三维建模有以下功能: 三维基本体,如点. ...

  7. SQL语句执行顺寻

    SQL语句执行的时候是有一定顺序的.理解这个顺序对SQL的使用和学习有很大的帮助. 1.from 先选择一个表,或者说源头,构成一个结果集. 2.where 然后用where对结果集进行筛选.筛选出需 ...

  8. Virtualizing WrapPanel VS toolkit:WrapPanel

    用toolkit:WrapPanel的时候,LIST太大,内存不行,等下我试试 Virtualizing WrapPanel这个 http://www.codeproject.com/Articles ...

  9. MySQL中,把varchar类型转为date类型

    如下表: 先使用str_to_date函数,将其varchar类型转为日期类型,然后从小到大排序 语法:select str_to_date(class_time,'%Y%m%d %H:%i:%s') ...

  10. window store app 附件读取

    public static async Task<bool> DisplayApplicationPicker(string folderName, string fileName) { ...