地址失败"/>
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'
optiontype'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]ifconfigbr-lan Link encap:Ethernet HWaddr 00:0C:43:76:20:77inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0inet6 addr: fe80::20c:43ff:fe76:2077/64Scope:Link
inet6 addr: fd16:4e5b:1ca2::1/60Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:14 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0RX bytes:0 (0.0 B) TX bytes:1764 (1.7KiB)
eth0 Link encap:Ethernet HWaddr00:0C:43:76:20:77inet6 addr: fe80::20c:43ff:fe76:2077/64Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:10 errors:0 dropped:0 overruns:0 frame:0TX packets:240 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:786 (786.0 B) TX bytes:89596 (87.4KiB)
Interrupt:3eth0.1 Link encap:Ethernet HWaddr 00:0C:43:76:20:77UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:5 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0RX bytes:0 (0.0 B) TX bytes:526 (526.0B)
eth0.2 Link encap:Ethernet HWaddr 00:0C:43:76:20:77inet6 addr: fe80::20c:43ff:fe76:2077/64Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:226 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0RX 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
扩展阅读:
更多推荐
openwrt修改lan口地址失败
发布评论