我有一台运行 ubuntu server 16.04 的物理机,在与它交互时遇到了一些麻烦。运行时,ifconfig
我看到了它的公共 IP 地址,但当我尝试从另一台机器 ping 它时,什么也没发生。
为了与它交互,我能够做的就是在服务器上,以某个用户身份登录,运行sudo service networking restart
,然后我就可以远程与机器交互(例如 ping)。然而,在我运行exit
或logout
在服务器上的那一刻,我就无法再与它交互了。
还值得注意的是,我似乎无法从服务器 ping 任何内容,除非我重新启动网络(如上文所述)。重新启动网络后,我可以 ping 出,但再次注销并再次登录后,我又回到了开始的位置。
我如何才能开始设置网络,以便它在启动时就能正常工作?
的内容/etc/network/interfaces
为:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto enp8s0
iface enp8s0 inet dhcp
更新:
看起来,即使重新启动网络服务后,我仍然只能间歇性地 ping 它。
答案1
我建议以下/etc/network/interfaces
文件:
auto lo
iface lo inet loopback
auto enp8s0
iface enp8s0 inet static
address 192.168.254.120
netmask 255.255.255.0
gateway 192.168.254.1
dns-nameservers 8.8.8.8 192.168.254.1
确保选择路由器中用于 DHCP 的范围之外的地址。当然,请在此处替换您的详细信息。
现在让系统读取并使用这些更改:
sudo ifdown enp8s0 && sudo ifup enp8s0
检查您是否可以访问互联网:
ping -c3 www.ubuntu.com
答案2
请用第二个答案中的方法编辑您的接口文件并设置静态 IP。
答案3
您可以尝试/etc/rc.local
。要在启动时运行命令,请使用
sudo nano /etc/rc.local
,然后在第一行输入sudo networking restart
。希望这会有所帮助