我连接到 wifi 并ifconfig
报告 3 个接口(lo
、eth0
和wlan0
),但我无法 ping 任何东西,包括路由器。
只有当ifconfig eth0 down
我真正开始使用互联网之后。
发生了什么事?我该如何避免这个问题?
我的/etc/network/interfaces
:
auto lo wlan0
iface lo inet loopback
路线:
前ifconfig eth0 down
:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.7.1 0.0.0.0 UG 0 0 0 wlan0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlan0
192.168.7.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.7.0 0.0.0.0 255.255.255.0 U 2 0 0 wlan0
后ifconfig eth0 down
:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.7.1 0.0.0.0 UG 0 0 0 wlan0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlan0
192.168.7.0 0.0.0.0 255.255.255.0 U 2 0 0 wlan0
是否配置
前ifconfig eth0 down
:
eth0 Link encap:Ethernet HWaddr 00:90:f5:a6:6c:de
inet addr:192.168.7.100 Bcast:192.168.7.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:45
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:430 errors:0 dropped:0 overruns:0 frame:0
TX packets:430 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:34157 (34.1 KB) TX bytes:34157 (34.1 KB)
wlan0 Link encap:Ethernet HWaddr 74:f0:6d:27:3e:4d
inet addr:192.168.7.156 Bcast:192.168.7.255 Mask:255.255.255.0
inet6 addr: fe80::76f0:6dff:fe27:3e4d/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:58 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:878 (878.0 B) TX bytes:10870 (10.8 KB)
后ifconfig eth0 down
:
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1435 errors:0 dropped:0 overruns:0 frame:0
TX packets:1435 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:116494 (116.4 KB) TX bytes:116494 (116.4 KB)
wlan0 Link encap:Ethernet HWaddr 74:f0:6d:27:3e:4d
inet addr:192.168.7.156 Bcast:192.168.7.255 Mask:255.255.255.0
inet6 addr: fe80::76f0:6dff:fe27:3e4d/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:63915 errors:0 dropped:0 overruns:0 frame:0
TX packets:50926 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:95400944 (95.4 MB) TX bytes:4750543 (4.7 MB)
答案1
通过查看评论,我添加了更多扩展内容作为答案。
可能的原因是 IP 被静态分配给接口,而不是通过添加网关自动请求(只是假设)。如果子网相同但有多个网关,系统不知道要查看哪里,除非单独添加持久/静态路由。
- 您可以点击 nm-applet ( ) 并选择编辑连接获取整个网络管理器首选项,或者您可以使用终端(按CTRL+ ALT+ T)并输入以下内容;
nm-connection-editor # 这将为您提供以下 nm-editor 屏幕
- 导航有线选项卡,选择配置文件并点击编辑或根据需要删除。如果要编辑,则导航至IPv4 设置选择方法作为自动 (DHCP)从
eth0
可用的 DHCP 服务器请求 IP(见下面的屏幕);
- 完成后,重新启动网络管理器以重新验证网络。
sudo 服务网络管理器重新启动
并且正如您所要求的,所有已保存的网络配置文件都可以在 system-connections 目录下找到。您可以在其中编辑/删除,但如果您要创建新的连接配置文件,我建议您使用 GUI。以下是查看当前网络配置文件的命令。
cd /etc/NetworkManager/system-connections/ # 将切换到目录 ls -l # 将按顺序显示所有配置文件 sudo rm -fr profile_name # 您需要 root 权限才能添加/编辑/删除,这将删除指定的配置文件
希望这可以帮助!! :)
答案2
您可能遇到了多个网关的问题。如果您没有通过 eth0 上网,您可以简单地删除 eth0 卡的网关设置。当您连接到 wifi [lo、eth0 和 wlan0] 时,避免有 3 个接口是可以的。
如果这不能解决您的问题,请给我命令 ifconfig 和 route 的输出。
答案3
来自@AzkerM 的解决方案:
- 导航到
network manager
(右上角)-->edit connections
-->wired
标签 - 删除所有配置文件
- 创建一个新的配置文件;确保
edit
-->IPv4 settings
Automatic DHCP
sudo service network-manager restart