ubuntu固定ip

二、Server版方法-Ubuntu16
以下配置静态IP的方法对Ubuntu和CentOS都适用。

1、修改IP地址
1)、先用命令ifconfig查询一下原来网卡的名字,如下:

hzq@ubuntu:~$ ifconfig
ens33 Link encap:以太网 硬件地址 00:0c:29:c3:b2:02
inet 地址:192.168.1.32 广播:192.168.1.255 掩码:255.255.255.0
inet6 地址: 2408:8207:c59:fa00:20c:29ff:fec3:b202/64 Scope:Global
inet6 地址: fe80::20c:29ff:fec3:b202/64 Scope:Link
inet6 地址: 2408:8207:c57:1f90:20c:29ff:fec3:b202/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 跃点数:1
接收数据包:4447 错误:0 丢弃:5 过载:0 帧数:0
发送数据包:1154 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:363068 (363.0 KB) 发送字节:101287 (101.2 KB)

lo Link encap:本地环回
inet 地址:127.0.0.1 掩码:255.0.0.0
inet6 地址: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 跃点数:1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
上面的ens33就是我们要设置IP的网卡名字,有些机器有好几个网卡,一定要看清楚。

2)、ctrl+alt+t 打开终端,输入命令sudo gedit /etc/network/interfaces打开配置文件。
按照下面所示添加或修改内容:

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
#上面的内容是原来就有的,下面是新加的内容。
#下面是要设置的网卡名字。
auto ens33
# static表示设置静态IP,动态IP用dhcp,一般默认就是dhcp状态
iface ens33 inet static
#IP地址
address 192.168.1.32
#子网掩码
netmask 255.255.255.0
#网关
gateway 192.168.1.1
#广播地址,可以不设
broadcast 192.168.1.255
#结束,#号内容是给你们看的,看完就可以删除,没啥用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2、修改DNS
ctrl+alt+t 打开终端,输入命令sudo gedit /etc/resolv.conf打开配置文件。
按照下面所示添加或修改内容:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
#上面的内容是原来就有的,下面是新加的内容。
nameserver 114.114.114.114
nameserver 8.8.8.8
#结束-------------------------------------
1
2
3
4
5
6
7
如果重启系统或者网络后,ping公网ip地址通,但是域名不通,编辑下面的文件,在其中加上上面的内容。
/etc/resolvconf/resolv.conf.d/base

/etc/resolvconf/resolv.conf.d/head

如果还是无法上网,可以将/etc/NetworkManager/目录下的system-connections目录删除或者移走,然后再重启网络或者系统。

3、重启服务的方法

重起网络服务:
输入命令:sudo /etc/init.d/networking restart
或输入命令:sudo service networking restart
 个别系统重启服务后地址不变,这一般是缓存的问题,可以通过ip命令刷新一下缓存。

重启DNS服务:
输入命令:sudo /etc/init.d/resolvconf restart
或输入命令:sudo service resolvconf restart
三、Server版方法-Ubuntu18
Ubuntu18修改IP和DNS的方法和Ubuntu16有较大差别,Ubuntu18是通过netplan来管理网络地址的。
1)、ctrl+alt+t 打开终端,进入/etc/netplan/目录,找到yaml文件,如下:

hzq@ubuntu:~$ ls /etc/netplan/
01-network-manager-all.yaml
hzq@ubuntu:~$ cat /etc/netplan/01-network-manager-all.yaml
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
hzq@ubuntu:~$
1
2
3
4
5
6
7
8
上面是文件原来的内容,
输入命令sudo gedit /etc/netplan/01-network-manager-all.yaml打开配置文件,
按照下面示例添加或修改内容:

network:
version: 2
renderer: networkd
ethernets:
#网卡名称,先用ifconfig查清楚要更改的网卡名字
ens33:
addresses: [192.168.1.36/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8]
1
2
3
4
5
6
7
8
9
10
启用配置信息。

sudo netplan apply
1
再用ifconfig查看,网卡地址已经变更过来,个别版本没生效的重启一下系统吧。
有些文章让你执行netplan apply的时候前面没有加sudo,这样一般不会真正生效的,要在前面加sudo或者直接在root下执行。

Ubuntu18更改IP地址、DNS等信息在这一个yaml文件更改即可,也挺方便的,不过由于18版开始变动比较大可能以前的使用者会比较迷茫,当然你也可以改回到以前的方法,不过要重装一些以前的网络管理组件。

四、命令行进行设置
命令直接修改的方式一般是临时方法,重启后会失效。
【当然所谓命令行方法只是一种叫法,在本文只是表示下面这种方法而已。并不是说所有命令行的方法都是临时性的】

1、设置IP地址和子网掩码

sudo ifconfig ens33 192.168.1.31 netmask 255.255.255.0
1
上面表示将网卡ens33的IP设置为:192.168.1.31,子网掩码改为:255.255.255.0

2、设置网关

sudo route add default gw 192.168.1.1
1
这里是添加一个默认网关的意思,并不是直接修改原来的网关,所以不要多次执行上述命令!

3、设置DNS
 无论是Ubuntu16还是Ubuntu18目前没有特别通用,特别快速的命令来直接设置DNS信息。
 要么需要修改配置文件,可参考上文;
 要么某些命令需要在特定条件下才能执行,比如nmcli、systemd等系列的工具集,并且操作有一定复杂度。
 所以建议还是按上文方法修改比较好。

4.重启网络服务
在这种方法中,IP和网关设置都是即时生效的,并不需要重启网络服务。
如果需要重启DNS服务,请按上文方法进行。

上一篇:文件管理基础命令之一


下一篇:Ubuntu18.04配置静态IP