各种 Linux 发行版配置静态 IP 的方法

3 minute

Ubuntu 配置静态 IP

注:本次配置环境是在 Ubuntu 20.04 下。

通过 netplan 的方法进行,编辑 /etc/netplan/00-installer-config.yaml 如下:

 1network:
 2  ethernets:
 3    enp0s3: # network card
 4      dhcp4: no
 5      optional: no
 6      nameservers:
 7        addresses: [114.114.114.114, 8.8.8.8] # dns
 8      gateway4: 192.168.1.1
 9      addresses: [192.168.1.128/24] # ip address and netmask
10  version: 2

首先将 enp0s3 改为自己的网卡,然后配置 IP 地址,子网掩码,网关,以及 DNS 服务器地址。

接下来执行 sudo netplan apply 即可完成。

CentOS 配置静态 IP

注:本次配置环境是在 CentOS 7.9 下。

找到当前网络下网卡名,然后编辑 /etc/sysconfig/network-scripts 下的 ifcfg-{网卡名} 文件如下:

1BOOTPROTO="static" 
2IPADDR=192.168.1.127
3NETMASK=255.255.255.0
4GATEWAY=192.168.1.1
5DNS1=114.114.114.114
6DNS2=8.8.8.8
7ONBOOT=yes

需要自行配置 IP 地址,子网掩码,网关,以及 DNS 服务器地址。

接下来执行 systemctl restart network 即可完成。

Debian 配置静态 IP

注:本次配置环境是在 Debian 11.7 下。

首先可以通过 ip -c link show 找到自己的网卡名称, 我的是 enp0s3。

接下来,编辑 /etc/network/interfaces 文件:

1allow-hotplug enp0s3 # network card
2iface enp0s3 inet static
3address 192.168.1.200 # ip address
4netmask 255.255.255.0
5gateway 192.168.1.1
6dns-nameservers 114.114.114.114 8.8.8.8

需要自行配置 IP 地址,子网掩码,网关,以及 DNS 服务器地址。

接下来,执行:systemctl restart ifup@{网卡名} 即可完成。

后续操作

为什么要配置静态 IP,那当然是有原因的,可以让 ssh 登录变得简单。

在上面配好静态 IP 的基础上,下面继续配置网络以实现主机和虚拟机系统互通。

首先考虑防火墙问题,由于是内部系统,可以考虑直接关闭防火墙。另外,如果主机是 Windows,不想关闭防火墙的话则需要配置好入站规则放通相关 IP。

接下来将虚拟机网络配置为桥接模式,并指定网卡为当前主机网络的网卡,我的是 “Realtek PCIe.GBE Family Controller”。

关于桥接模式的解释如下:

桥接模式就是将主机网卡与虚拟的网卡利用虚拟网桥进行通信。类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机当中,所以所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。

所以,桥接模式下的所有虚拟机都是和主机是在同一网段的。

最后,即可顺利通过 ssh 登录到虚拟机了,免密免 IP 登录可以参考我的这篇文章:实现 SSH 免 IP 免密登录

over.