您的位置:

Linux静态IP设置

一、确定网络接口

首先,需要获取当前系统中的网络接口名称。可以使用以下命令:

ifconfig -a

该命令可以列出系统中启用的所有网络接口,例如:

eth0  Link encap:Ethernet  HWaddr 00:11:22:33:44:55  
      inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
      inet6 addr: fe80::211:22ff:fe33:4455/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:3716 errors:0 dropped:0 overruns:0 frame:0
      TX packets:2914 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:540606 (540.6 KB)  TX bytes:414018 (414.0 KB)
      
eth1  Link encap:Ethernet  HWaddr 00:11:22:33:44:56  
      inet addr:10.0.0.100  Bcast:10.0.0.255  Mask:255.255.255.0
      inet6 addr: fe80::211:22ff:fe33:4456/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:3716 errors:0 dropped:0 overruns:0 frame:0
      TX packets:2914 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:540606 (540.6 KB)  TX bytes:414018 (414.0 KB)

可以看到系统中有两个网络接口 eth0 和 eth1。如果只有一个网络接口,则对应的名称就是 eth0。

二、备份配置文件

在进行静态IP设置之前,先备份网络接口的配置文件。该文件的位置和名称依据不同的系统可能会有所不同,可以使用以下命令查找:

find /etc/ -name "interfaces"

这里以 Ubuntu 为例,假设找到的文件为 /etc/network/interfaces。可以使用以下命令备份该文件:

sudo cp /etc/network/interfaces /etc/network/interfaces.bak

这样,在设置失败的情况下可以方便地还原到原有的网络接口配置状态。

三、修改配置文件

编辑网络接口的配置文件,例如在 Ubuntu 上可以使用以下命令:

sudo nano /etc/network/interfaces

在打开的文件中,可以看到该网络接口的相关配置信息,例如:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

其中,auto 表示此网络接口随系统启动自动启用,iface 表示此网络接口的类型,inet 表示此网络接口使用的协议类型是 IPv4。

修改文件的内容,以修改 eth0 这个网络接口为例:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static    # 将 dhcp 修改为 static
address 192.168.1.100     # 修改的内容,设置静态 IP 地址
netmask 255.255.255.0     
gateway 192.168.1.1
dns-nameservers 192.168.1.1

其中,address 表示要设置的静态 IP 地址,netmask 表示子网掩码,gateway 表示默认网关,dns-nameservers 表示 DNS 服务器地址,可以根据网络环境修改相应的值。

四、重启网络服务

修改完网络接口的配置文件之后,需要重启网络服务才能生效。可以使用以下命令:

sudo systemctl restart networking

如果网络服务未能正常重启,可以使用以下命令还原备份的配置文件:

sudo cp /etc/network/interfaces.bak /etc/network/interfaces

五、验证设置是否生效

可以使用以下命令查看当前网络接口的 IP 地址、掩码和网关等信息:

ifconfig eth0

该命令将打印出类似以下的内容:

eth0  Link encap:Ethernet  HWaddr 00:11:22:33:44:55  
      inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
      inet6 addr: fe80::211:22ff:fe33:4455/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:3716 errors:0 dropped:0 overruns:0 frame:0
      TX packets:2914 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:540606 (540.6 KB)  TX bytes:414018 (414.0 KB)

其中,inet addr 表示当前的 IP 地址,Bcast 表示广播地址,Mask 表示掩码。

可以使用以下命令验证是否可以通过该 IP 地址访问网络:

ping www.baidu.com

如果 ping 命令能够正常运行,则说明设置的静态 IP 地址已经生效。