nmcli的网络配置

发布时间 - 2017-07-24 00:00:00    点击率:

使用nmcli命令配置网络

NetworkManager是管理和监控网络设置的守护进程,设备既就是网络接口,连接是对网络接口的配置,一个网络接口可以有多个连接配置,但同时只有一个连接配置生效。

1 配置主机名

CentOS6 之前主机配置文件:/etc/sysconfig/network

CentOS7主机名配置文件:/etc/hostname,默认没有这个文件,通过DNS反向解析获取主机名,主机名默认为:localhost.localdomain

显示主机名信息

    hostname

    hostnamectl status

创建并修改文件并生效

hostnamectl set-hostname deskX.example.com

[root@centos73 ~]# hostnamectl set-hostname centos7.3.com
[root@centos73 ~]# hostname
centos7.3.com
[root@centos73 ~]# cat /etc/hostname
centos7.3.com

可以看到已经修改成功。

删除文件。回复默认主机名localhost.localdomain

2 常用命令

    nmcli connection show 显示所有连接

    nmcli connection show --active    显示所有活动的连接状态

    nmcli connection show "ens33"    显示网络连接配置

    nmcli device status            显示设备状态

    nmcli device show ens33        显示网络接口属性

    nmcli connection add help        查看帮助

    nmcli connection reload        重新加载配置

    nmcli connection down test2        禁用test2的配置,注意一个网卡可以有多个配置。

    nmcli connection up test2        启用test2的配置

    nmcli device disconnect ens33    禁用ens33网卡,物理网卡

    nmcli device disconnect ens33    启用ens33网卡

图形工具

    nm-connection-editor

字符工具

    nmtui

    nmtui-connect

    nmtui-edit

    nmtui-hostname

3 创建新连接配置

(1)创建新连接配置default,IP通过DHCP自动获取

[root@centos73 ~]# nmcli connection add con-name default type Ethernet ifname eth0
Connection 'default' (d62f98af-86ed-4735-80aa-2d80351765b2) successfully added.

删除连接

[root@centos73 ~]# nmcli connection delete default
Connection 'default' (d62f98af-86ed-4735-80aa-2d80351765b2) successfully deleted.

(2)创建新的连接配置test2,指定静态IP,不自动连接

[root@centos73 ~]# nmcli connection add con-name test2 ipv4.method manual ifname ens33 autoconnect no type Ethernet ipv4.addresses 172.25.100.100/24 gw4 172.25.100.1
Connection 'test2' (98385bf5-8cc3-47e3-a5f2-51e2d736be6d) successfully added.

参数说明:

    con-name 指定连接名字,没有特殊要求,

    ipv4.methmod 指定获取IP地址的方式

    ifname 指定网卡设被名,既就是次配置所生效的网卡

    autoconnect 指定是否自动启动

    ipv4.addresses 指定IPv4地址

    gw4指定网关

4查看/etc/sysconfig/network-scripts/目录

会看到多出一个文件ifcfg-test2。说明添加确实生效了。

/etc/sysconfig/network-scripts/ifcfg-test2

[root@centos73 ~]# ls /etc/sysconfig/network-scripts/ifcfg-*
/etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-lo
/etc/sysconfig/network-scripts/ifcfg-ens34 /etc/sysconfig/network-scripts/ifcfg-test2

5 启用test2连接配置

[root@centos73 ~]# nmcli connection up test2
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)
[root@centos73 ~]# systemctl restart network

看下是否生效

[root@centos73 ~]# nmcli device show ens33

GENERAL.DEVICE: ens33
GENERAL.TYPE: ethernet
GENERAL.HWADDR: 00:0C:29:3A:00:82
GENERAL.MTU: 1500
GENERAL.STATE: 100 (connected)
GENERAL.CONNECTION: test2
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/7
WIRED-PROPERTIES.CARRIER: on
IP4.ADDRESS[1]: 172.25.100.100/24
IP4.GATEWAY: 172.25.100.1
IP6.ADDRESS[1]: fe80::5a5b:2cc3:a448:e2e1/64
IP6.GATEWAY:

好了,基本的IP地址配置成功

6 修改连接设置

1)修改test2为自动启动

[root@centos73 ~]# nmcli connection modify test2 connection.autoconnect yes

(2)修改DNS为172.25.1.1

[root@centos73 ~]# nmcli connection modify test2 ipv4.dns 172.25.1.1

(3)添加DNS 114.114.114.114

[root@centos73 ~]# nmcli connection modify test2 +ipv4.dns 114.114.114.114

看下是否成功

[root@centos73 ~]# cat /etc/sysconfig/network-scripts/ifcfg-test2

TYPE=Ethernet
[……]
NAME=test2
UUID=98385bf5-8cc3-47e3-a5f2-51e2d736be6d
DEVICE=ens33
ONBOOT=yes
DNS1=172.25.1.1
IPADDR=172.25.100.100
PREFIX=24
GATEWAY=172.25.100.1
DNS2=114.114.114.114

可以看到均已生效

(4)删除DNS

[root@centos73 ~]# nmcli connection modify test2 -ipv4.dns 114.114.114.114

(5)修改IP地址

[root@centos73 ~]# nmcli connection modify test2 ipv4.addresses 200.100.100.100/24 gw4 200.100.100.1

(6)还可以添加多个IP

[root@centos73 ~]# nmcli connection modify test2 +ipv4.addresses 10.10.10.10/8

7 nmcli 命令和/etc/sysconfig/network-scripts/ifcfg-*文件的对应关系

ipv4.method manual        BOOTPROTO=none

ipv4.method auto        BOOTPROTO=dhcp

ipv4.addresses "192.0.2.1/24   IPADDR=192.0.2.1  

                PREFIX=24

gw4 192.0.2.254"          GATEWAY=192.0.2.254        

ipv4.dns 8.8.8.8         DNS0=8.8.8.8

ipv4.dns-search example.com   DOMAIN=example.com

ipv4.ignore-auto-dns true     PEERDNS=no

connection.autoconnect yes    ONBOOT=yes

connection.id eth0         NAME=eth0

connection.interface-name eth0   DEVICE=eth0

802-3-ethernet.mac-address . . .   HWADDR= . . .

 


# 多个  # 可以看到  # 配置文件  # 自动启动  # 好了  # 还可以  # 只有一个  # 多出  # 均已  # 特殊要求 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何用搬瓦工VPS快速搭建个人网站?  如何自定义建站之星模板颜色并下载新样式?  太平洋网站制作公司,网络用语太平洋是什么意思?  Laravel如何使用Telescope进行调试?(安装和使用教程)  做企业网站制作流程,企业网站制作基本流程有哪些?  Laravel如何使用Livewire构建动态组件?(入门代码)  iOS UIView常见属性方法小结  如何在Windows 2008云服务器安全搭建网站?  lovemo网页版地址 lovemo官网手机登录  HTML5打空格有哪些误区_新手常犯的空格使用错误【技巧】  如何快速建站并高效导出源代码?  如何在Windows虚拟主机上快速搭建网站?  如何用西部建站助手快速创建专业网站?  js实现点击每个li节点,都弹出其文本值及修改  公司门户网站制作流程,华为官网怎么做?  canvas 画布在主流浏览器中的尺寸限制详细介绍  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程  如何快速打造个性化非模板自助建站?  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  怎么用AI帮你设计一套个性化的手机App图标?  Laravel如何实现API版本控制_Laravel版本化API设计方案  Laravel怎么上传文件_Laravel图片上传及存储配置  如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  Laravel模型事件有哪些_Laravel Model Event生命周期详解  JavaScript如何实现路由_前端路由原理是什么  javascript中闭包概念与用法深入理解  Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例  如何解决hover在ie6中的兼容性问题  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  ,南京靠谱的征婚网站?  网站优化排名时,需要考虑哪些问题呢?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  Android中AutoCompleteTextView自动提示  linux写shell需要注意的问题(必看)  JavaScript数据类型有哪些_如何准确判断一个变量的类型  JS经典正则表达式笔试题汇总  Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面  简单实现Android文件上传  北京专业网站制作设计师招聘,北京白云观官方网站?  Linux系统命令中tree命令详解  jQuery中的100个技巧汇总  html如何与html链接_实现多个HTML页面互相链接【互相】  JS中页面与页面之间超链接跳转中文乱码问题的解决办法  CSS3怎么给轮播图加过渡动画_transition加transform实现【技巧】  宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程  Laravel怎么连接多个数据库_Laravel多数据库连接配置  简历在线制作网站免费版,如何创建个人简历?