关于ping外网时出现unknow host的问题

本文介绍了在嵌入式Linux环境下如何配置静态IP,并解决NFSROOT启动方式下的网络问题。详细步骤包括修改网络接口配置文件、添加DNS服务器及默认网关等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

静态IP设置

通过修改/etc/network/interfaces就好,参数说明直接man interfaces看就好
修改的参数可看下面第二张图。

修改过程

首先,ip地址这些是设置正确了,板子可以正常ping通PC,网关,但就是无法PING通外网。如下
ping unknow picture

根据网上搜索和自己摸索更改了dns如下,直接改resolv.conf下启动又会没了:
interfaces

然后重启 ,命令如下,如果不是用NFSROOT方式启动的板子,那么一般就可以正常启动了,而且重启时可以看到输出网络重启的信息,但在nfsroot方式启动时确依然不行,显示如下

root@192:~# /etc/init.d/networking restart
Restarting networking (via systemctl): networking.service.
root@192:~# 

依网上说法直接修改:/etc/resolv.conf文件,添加两行如下,dns是依自己的PC上的IP填的。还是不行,直接PING了下DNS地址显示 如下

root@192:~# cat /etc/resolv.conf 

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)


#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

nameserver 202.96.134.133
nameserver 202.96.128.168
root@192:~# 
root@192:~# /etc/init.d/networking restart
Restarting networking (via systemctl): networking.service.
root@192:~# ping www.baidu.com
ping: unknown host www.baidu.com
root@192:~# 
root@192:~# ping 202.96.133.134
connect: Network is unreachable

然后手动加了下网关,ping dns时有变化了但还是不通,而是外网居然OK了!!!如下:

root@192:~# ping 202.96.133.134
connect: Network is unreachable

root@192:~# route add default gw 192.168.1.2
root@192:~# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.2     0.0.0.0         UG    0      0        0 eth0
192.168.1.0     *               255.255.255.0   U     0      0        0 eth0

root@192:~# ping 202.96.133.134
PING 202.96.133.134 (202.96.133.134) 56(84) bytes of data.
^C
--- 202.96.133.134 ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3023ms

root@192:~# ping www.baidu.com
PING www.a.shifen.com (14.215.177.38) 56(84) bytes of data.
64 bytes from 14.215.177.38: icmp_seq=1 ttl=55 time=8.20 ms
64 bytes from 14.215.177.38: icmp_seq=2 ttl=55 time=7.38 ms
64 bytes from 14.215.177.38: icmp_seq=3 ttl=55 time=6.90 ms
^C
--- www.a.shifen.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 6.904/7.499/8.206/0.537 ms
root@192:~# 

总结

  1. 如果是通常的非NFSROOT启动的板子,配置好 /etc/network/interfaces就行
  2. NFSROOT启动的网络文件系统:

    • 2.1 在/etc/resolv.conf中加入DNS,此处DNS是你的PC的DNS ,不是网上说的什么网关,google通用DNS等哦。。
      nameserver 202.96.134.133
      这里写图片描述
    • 2.2 添加默认网关(网关地址看PC如上图) route add default gw 192.168.1.2
    • 2.3 重启网络
  3. nfsroot启动的想联通外网就是这样了,每次都要修改/etc/resolv.conf,因为这个是动态生成的,然后还要route加网关。。。想要静态的可以查询下系统的网络加载过程,我比较懒,每个版本的linux系统都不一样,将上述步骤直接写到/etc/profile里用,OK

    if [ -f /etc/resolv.conf ];then
            echo "nameserver 202.96.134.133" >> /etc/resolv.conf
            echo "nameserver 202.96.128.166" >> /etc/resolv.conf
            /sbin/route add default gw 192.168.1.2
            /etc/init.d/networking restart
    fi
    

另附
网络相关的配置文件interfaces说明
直接man interfaces,同样man resolv.conf

 The static Method
       This method may be used to define Ethernet interfaces  with  statically
       allocated IPv4 addresses.
       Options
              address address
                     Address (dotted quad/netmask) required
              netmask mask
                     Netmask (dotted quad or CIDR)
              broadcast broadcast_address
                     Broadcast  address  (dotted quad, + or -). Default value:
                     "+"
              metric metric
                     Routing metric for default gateway (integer)
              gateway address
                     Default gateway (dotted quad)
              pointopoint address
                     Address of other end point (dotted quad). Note the spell��‐
                     ing of "point-to".
              hwaddress address
                     Link local address.
              mtu size
                     MTU size
              scope  Address  validity  scope.  Possible values: global, link,
                     host
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值