如何在Ubuntu 18.04上设置静态IP – 服务器

我见过有人说设置静态IP的文件仍然是/etc/network/interfaces

而且我看到其他人说在18.04它现在在/etc/netplan (人们似乎对此感到不满)

我试过这个:

 version: 2 renderer: networkd ethernets: eth0: dhcp4: no dhcp6: no addresses: [192.168.1.9/24] gateway4: 192.168.1.1 nameservers: addresses: [192.168.1.1, 8.8.8.8, 8.8.4.4] 

在我的/etc/netplan/50-cloud-init.yamlsudo netplan apply但这只会杀死服务器连接到互联网。

配置文件时不要使用TAB 。 它只适用于SPACE

这是我的问题。

Ubuntu 18.04现在使用Netplan配置网络接口,因此配置必须在文件/etc/netplan/50-cloud-init.yaml ,文档建议不要再使用旧文件/etc/network/interfaces弄乱。 我已经在我的Ubuntu Server虚拟机上使用了这个配置,它到目前为止工作,只是确保信息是正确的; optional: true设置可以通过不validation接口是否连接来加速启动时间,这是默认的,也不需要声明未使用的值,例如DHCP,如果它们不存在则将它们视为禁用,Ubuntu Server中的默认渲染器也是networkd因此无需声明它。 从你的post中获取信息,它应该是这样的:

 network: ethernets: eht0: addresses: - 192.168.1.9/24 gateway4: 192.168.1.1 nameservers: addresses: [192.168.1.1, 8.8.8.8, 8.8.4.4] optional: true version: 2 

保存文件后,运行sudo netplan --debug apply debug标志将输出更多信息,并可以帮助检测任何错误。 如果虚拟审查VM配置,请检查以太网电缆。 如果使用WLAN我已经读过它设置起来有点棘手,但我还没有设置连接到WiFi的机器与这个服务器版本。

如果你想了解更多关于Netplan的信息,有一个网站,它有一些基本的配置示例。

https://netplan.io/

这是在Ubuntu 18.04中设置静态IP指令 – 服务器:

 $ sudo nano /etc/netplan/50-cloud-init.yaml 

然后替换您的配置,例如,以下行:

 # This file describes the network interfaces available on your system # For more information, see netplan(5). network: version: 2 renderer: networkd ethernets: ens160: dhcp4: no addresses: [192.168.1.137/24] gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8,8.8.4.4] 

应用更改:

 $ sudo netplan apply 

万一你遇到一些问题执行:

 $ sudo netplan --debug apply 

[ 注意 ]:

  • /24相当于255.255.255.0
  • ens160是您的以太网名称,您可以使用$ ifconfig获取它
  • Ubuntu 16.04和14.04网络接口配置有不同的方法。

这是使其有效的设定。

 $sudo nano /etc/netplan/50-cloud-init.yaml network: ethernets: eth0: addresses: - 192.168.1.9/24 dhcp: false gateway4: 192.168.1.1 nameservers: addresses: - 192.168.1.1 - 8.8.8.8 - 8.8.4.4 search: [] version: 2 $sudo netplan apply 

重启服务器

将eth0更改为适配器,使用ifconfig查找适配器。