前两天配置的WEB开发虚拟机,默认开机时用DHCP服务获取动态IP的,每次重启,IP地址都可能会改变,比如上次开机时IP地址是192.168.1.109,这次开机IP地址又变成192.168.1.111了。这样不好,很不好,每次重新开机都要先查到新的IP地址,才可以用浏览器来查看网站更改的效果,非常不方便。因此我们需要给这台开发服务器分配一个静态的IP地址。
需求说明:在这个例子里,我们的路由器IP地址是192.168.1.1,DHCP里设置的动态IP地址分配是保留192.168.1.2 ~192.168.1.100作为需要静态分配的IP地址段,给提供特定应用服务的服务器和计算机用,192.168.1.101及以后的由DHCP服务按照联网的设备动态分配。这里我们要把这台虚拟服务器的IP地址设定为192.168.1.8。
1. 首先查到服务器的网卡名称和MAC地址。
daweibro@Web-Ubuntu-Server-1604:~$ ifconfig enp0s3 Link encap:Ethernet HWaddr 08:00:27:fb:3c:24 inet addr:192.168.1.111 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fefb:3c24/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2352 errors:0 dropped:0 overruns:0 frame:0 TX packets:2035 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:2752133 (2.7 MB) TX bytes:178872 (178.8 KB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:160 errors:0 dropped:0 overruns:0 frame:0 TX packets:160 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:11840 (11.8 KB) TX bytes:11840 (11.8 KB)
上例中用了ifconfig命令来用来查看Linux系统的网络状况,我们找到了网卡的名字是enp0s3, Mac地址是08:00:27:fb:3c:24,目前分配的内网IP是192.168.1.111。记下这些数据后面备用。
注:Ubuntu 14.04及以前默认的网卡名称是eth0, eth1, Ubuntu 16.04的网卡名变成类似于enp0s3这种样式了,不习惯的朋友还是可以改成以前的样式。
2.修改IP地址设置
Linux的IP地址获取方式定义在/etc/network/interfaces文件里,需要使用vim/nano等软件编辑。目前文件内容如下:
source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto enp0s3 iface enp0s3 inet dhcp
我们要把其中由dhcp动态分配变为静态IP,因此把文件修改如下:
source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto enp0s3 iface enp0s3 inet static address 192.168.1.8 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 192.168.1.1
这样就指定了静态IP地址为192.168.1.8,子网掩码255.255.255.0,网关192.168.1.1,dns-nameservers 192.168.1.1。我们把dns-nameservers定义在这里,是因为设置nameserver的/etc/resolv.conf文件是动态生成的,如果定义在这个文件,每次重启都会被重新覆盖,我们就没法正常提供网络服务,也没法使用apt服务更新系统安装软件了。
3.保存文件,重启系统
保存了配置文件之后,运行sudo /etc/init.d/networking restart命令重启网卡,IP地址没有变动,sudo reboot重启系统之后,IP地址终于修改成功了:
daweibro@Web-Ubuntu-Server-1604:~$ ifconfig enp0s3 Link encap:Ethernet HWaddr 08:00:27:fb:3c:24 inet addr:192.168.1.8 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fefb:3c24/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:131 errors:0 dropped:0 overruns:0 frame:0 TX packets:97 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:13990 (13.9 KB) TX bytes:26165 (26.1 KB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:160 errors:0 dropped:0 overruns:0 frame:0 TX packets:160 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:11840 (11.8 KB) TX bytes:11840 (11.8 KB)
4.如果你的路由器使用了静态地址保留功能,最好在路由器的控制面板使用这个功能,把IP地址和Mac地址绑定,以防止可能出现的IP地址冲突。
- 293 阅读
添加新评论