如何在 Ubuntu 中设置静态 IP?

如何在 Ubuntu 中设置静态 IP?

我是 Linux 新手,有多年使用 Windows 服务器/台式机的经验,在设置静态 IP 时遇到问题。我正在使用以前版本的 Ubuntu 的方法,但似乎不适用于 16.04

我已经使用该命令sudo nano /etc/network/interface并添加了以下内容

iface enp0s25 inet static
address 10.10.8.2
netmask 255.255.0.0
gateway 10.10.1.1
dns-nameservers 8.8.8.8 8.8.4.4

我已经重启了系统,但以太网几乎已经死机,ping 根本不起作用。我尝试修改/etc/NetworkManager/NetworkManager.conf并进行了以下更改

#dns=dnsmasq (comment out the dnsmasq)
[ifupdown]
managed=true (changed from false)

通过这个,我可以让以太网偶尔工作,但它最终会失败。

我已经在另外两台机器和一台虚拟机上尝试了此配置,结果都一样。我可以确认,当我在其中任何一台机器上安装 Windows 时,这些设置都可以正常工作。当我让 DHCP 自动配置时,一切都正常工作,没有问题。

我想我在这里遗漏了一些东西,设置静态 IP 应该不难。

答案1

我遇到了同样的问题,这是我的解决方案:

sudo nano /etc/network/interfaces

并将其粘贴(根据您的网络进行修改)到# The primary network interface

auto enp0s25
iface enp0s25 inet static
address 192.168.0.16
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 8.8.4.4 8.8.8.8

ifconfig -a您可以在 ubuntu 16.04 或ip address18.04+ 上使用终端命令获取正确的接口名称

关闭虚拟机然后!转到网络设置并单击刷新 MAC 地址按钮几次 :)

在此处输入图片描述

并启动你的虚拟机然后你就可以获得互联网了!

更新时间:2019.02.20

对于 ubuntu 18.04+,你需要编辑此文件

/etc/netplan/50-cloud-init.yaml

network:
    ethernets:
        enp0s3:
            addresses: [192.168.0.55/24]
            gateway4: 192.168.0.1
            dhcp4: no
            nameservers:
              addresses: [1.1.1.1,8.8.8.8]
            optional: true
    version: 2

答案2

按照上述接受的答案设置静态 IP 地址是可行的,但必须刷新旧的 IP 地址设置,然后重新启动 networking.service:

sudo ip addr flush enp0s25
sudo systemctl restart networking.service

然后验证它是否正确:

ip add

答案3

# interfaces(5) file used by ifup(8) and ifdown(8)
# auto lo
# iface lo inet loopback
auto enp2s0 
iface enp2s0 inet static
    address 172.16.9.124
    netmask 255.255.240.0
    gateway 172.16.0.9
dns-nameservers 8.8.8.8

答案4

我遇到了同样的问题,解决方案“是”简单的......至少对我来说是这样。

auto ens160
iface ens160 inet static
address 172.31.0.164/22
netmask 255.255.252.0
gateway 172.31.0.2
network 172.31.0.0
broadcast 172.31.3.255
dns-nameservers 172.31.0.21 172.31.0.18

#Add internal route
up route add -net 172.16.168.0/21 gw 172.31.0.20 dev ens160

并且,创建一个具有网络接口名称的空文件:

~$ touch /etc/network/interfaces.d/ens160

有用...

相关内容