Linux如何修改ip地址

参考:

3 Ways to change ip address in Linux - howtouselinux

Ubuntu篇:
一、Desktop版方法

 如果你使用了Desktop版本或者server版上面加了desktop桌面,那么你就尽量使用图形界面来配置系统IP信息,这个和在windows系统上修改地址大同小异,在此不一一赘述。

二、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
 
上面的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
#结束,#号内容是给你们看的,看完就可以删除,没啥用
 

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
#结束-------------------------------------
 
如果重启系统或者网络后,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:~$ 
 
上面是文件原来的内容,
输入命令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]
 
启用配置信息。

sudo netplan apply
 
再用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
 
上面表示将网卡ens33的IP设置为:192.168.1.31,子网掩码改为:255.255.255.0

2、设置网关

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

Centos篇
一、CentOS 修改IP地址 
修改对应网卡的IP地址的配置文件 如果只有一张网卡就是eth0,类推 
# vi /etc/sysconfig/network-scripts/ifcfg-eth0 
修改以下内容 
DEVICE=eth0 #描述网卡对应的设备别名,例如ifcfg-eth0的文件中它为eth0 
BOOTPROTO=static #设置网卡获得ip地址的方式,可能的选项为static,dhcp或bootp,分别对应静态指定的 ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址 
BROADCAST=192.168.0.255 #对应的子网广播地址 
HWADDR=00:07:E9:05:E8:B4 #对应的网卡物理地址 
IPADDR=12.168.1.2 #如果设置网卡获得 ip地址的方式为静态指定,此字段就指定了网卡对应的ip地址
IPV6INIT=no 
IPV6_AUTOCONF=no 
NETMASK=255.255.255.0 #网卡对应的网络掩码 
NETWORK=192.168.1.0 #网卡对应的网络地址 
ONBOOT=yes #系统启动时是否设置此网络接口,设置为yes时,系统启动时激活此设备


二、CentOS 修改网关 
修改对应网卡的网关的配置文件 
[root@centos]# vi /etc/sysconfig/network

修改以下内容 
NETWORKING=yes(表示系统是否使用网络,一般设置为yes。如果设为no,则不能使用网络,而且很多系统服务程序将无法启动) 
HOSTNAME=centos(设置本机的主机名,这里设置的主机名要和/etc/hosts中设置的主机名对应) 
GATEWAY=192.168.1.1(设置本机连接的网关的IP地址。例如,网关为10.0.0.2)

三、CentOS 修改DNS

修改对应网卡的DNS的配置文件 
# vi /etc/resolv.conf 
修改以下内容 
nameserver 8.8.8.8 #google域名服务器 
nameserver 8.8.4.4 #google域名服务器

四、重新启动网络配置 
# service network restart 
或 
# /etc/init.d/network restart
 

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值