immortal-ghost

  昨天重新安装了下系统,发现虚拟机中安装的Linux系统ip地址被重新分配,开始没有觉得什么,可是打算连接虚拟机中搭建的solr集群时候发现悲剧了,原因是使用zookeeper搭建的solr集群,在zookeeper的配置文件中,设置的ip地址和现在系统的地址完全不一样,虽然可以手动一个个修改。可是依然觉得太麻烦,最后决定直接修改Linux的ip地址得了,以下是修改方法。

注:修改必须使用 root权限,否则无法修改成功。

1. 在开始操作之前,先在命令行中 输入命令  ifconfig  查看网卡名称,如下图所示

如图中所示,可以看到两个网卡名称:ens33 和 lo。 而我们需要的就是修改名为ens33的网卡设置

 注:这里有个坑,如果在Ubuntu 16.04之前的版本 此处显示的网卡名称是enth0, 而不是现在显示的ens33.。

在网上找了张图片,之前的网卡名称确实和现在的网卡名称不一样

 

2. 在命令行输入  vim /etc/network/interfaces ,  使用 编辑器打开interfaces配置文件,然后输入以下代码。

 1 # interfaces(5) file used by ifup(8) and ifdown(8)
 2 auto lo
 3 iface lo inet loopback
 4 
 5 auto ens33
 6 iface ens33 inet static
 7 address 192.168.1.7
 8 netmask 255.255.255.0
 9 gateway 192.168.1.1
10 dns-nameservers 218.85.157.99 218.85.152.99

设置网卡名称为 ens33 静态ip地址, 网关 , DNS地址等。注意这里的网卡名称需要根据你自己的网卡名称修改。如果将网卡名称ens33 改成eth0, 那么会出现如下的错误

[....] Restarting networking (via systemctl): networking.serviceJob for networking.service failed because the control process exited with error code.

See "systemctl status networking.service" and "journalctl -xe" for details. failed!

修改后如下图所示

3.设置DNS服务地址

 DNS地址已经在第二步设置过了,这里说下注意的地方

   1.  查看DNS地址可以在Windown的 命令窗口中输入 ipconfig /all 查看DNS服务地址。

      2. 不要手动在配置文件  /etc/resolv.conf  中设置 nameserver,否则重启系统之后,所有的DNS地址都会被覆盖。所以如果要设置DNS服务地址,请在第二步的 配置文件interfaces 中设置 dns-nameservers 属性,每个DNS服务地址用空格间隔,重新网络服务之后,所有的nameserver会被添加到  /etc/resolv.conf配置文件中。

下面是  /etc/resolv.conf  重启网络之后的 DNS服务地址

 

4. 设置完成之后,输入命令   /etc/init.d/networking restart  重新启动网络

看到OK说明重启成功了,  继续通过 ifconfig 命令查看现在网卡情况

可以看到ip地址已修改成功。 我之前的地址是192.168.1.6

注:如果启动不成功,或者出错。在命令行输入  systemctl restart network-manager.service   将网络服务重新启动

修改ip的过程很简单,但是修改的过程需要注意 网卡名称 和 DNS服务的设置,别踩坑了。

文章有很多不足的地方,欢迎大家指正。谢谢!

分类:

技术点:

相关文章: