Linux 使用nmcli配置网络
Linux 使用nmcli配置网络
前提:
在虚拟机中添加一张桥接模式的网卡,如果是VirtualBox虚拟机中要shutdown才能添加。
1、启动NetworkManager工具,安装nmcli命令支持tab补全的包
[root@despotic ~]# systemctl start NetworkManager
[root@despotic ~]# yum install bash-completion -y
[root@despotic ~]# bash
安装完成之后就可以在nmcli配置的时候使用tab补全命令了
2、查看新增加的网卡信息和设备信息
[root@despotic ~]# nmcli device
DEVICE TYPE STATE CONNECTION
ens33 ethernet connected ens33
ens37 ethernet disconnected --
lo loopback unmanaged --
[root@despotic ~]# nmcli connection
NAME UUID TYPE DEVICE
ens33 e2301185-1a8d-4b12-b1c7-bfbdf84f7a50 --ethernet ens33
可以看见ens37已经有了设备的信息,但是没有ens37网络连接的信息
3、添加网卡信息,此时可以看见ens37的信息
[root@despotic ~]# nmcli connection add type ethernet con-name ens37 ifname ens37 autoconnect yes
Connection 'ens37' (894ebf60-16c9---62ad5fb9b2b7) successfully added.
[root@despotic ~]# nmcli connection
NAME UUID TYPE DEVICE
ens33 e2301185-1a8d-4b12-b1c7-bfbdf84f7a50 --ethernet ens33
ens37 894ebf60-16c9---62ad5fb9b2b7 --ethernet ens37
4、为ens37配置ip地址等信息
[root@despotic ~]# nmcli connection modify ens37 ipv4.addresses "192.168.27.36/16" ipv4.gateway 192.168.0.1 ipv4.dns 192.168.0.1 ipv4.method manual connection.autoconnect yes connection.interface-name ens37
重新加载一下,启动ens37就可以看见ens37的网络信息了
[root@despotic ~]# nmcli connection reload
[root@despotic ~]# nmcli connection up ens37
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/)
[root@despotic ~]# nmcli connection show ens37 | grep ipv4
ipv4.method: manual
ipv4.dns: 192.168.0.1
ipv4.dns-search: --
ipv4.dns-options: (default)
ipv4.dns-priority:
ipv4.addresses: 192.168.27.36/
ipv4.gateway: 192.168.0.1
ipv4.routes: --
ipv4.route-metric: -
ipv4.ignore-auto-routes: no
ipv4.ignore-auto-dns: no
ipv4.dhcp-client-id: --
ipv4.dhcp-timeout:
ipv4.dhcp-send-hostname: yes
ipv4.dhcp-hostname: --
ipv4.dhcp-fqdn: --
ipv4.never-default: no
ipv4.may-fail: yes
ipv4.dad-timeout: - (default)
[root@despotic ~]# ifconfig
ens37: flags=<UP,BROADCAST,RUNNING,MULTICAST> mtu
inet 192.168.27.36 netmask 255.255.0.0 broadcast 192.168.255.255
inet6 fe80:::713d:ac99:83cc prefixlen scopeid 0x20<link>
ether :0c::5f::9d txqueuelen (Ethernet)
RX packets bytes (5.7 MiB)
RX errors dropped overruns frame
TX packets bytes (12.2 KiB)
TX errors dropped overruns carrier collisions
排除其他因素,此时就可以使用物理机ping同ens37的ip了
如果ping不通,请检查vmware的虚拟网络配置,防火墙等一切因素
5、如果不小心配置错误,可将配置信息删除重新配置(重复3-4步骤)
[root@despotic ~]# nmcli connection delete ens37
Connection 'ens37' (894ebf60-16c9---62ad5fb9b2b7) successfully deleted.
[root@despotic ~]# nmcli connection
NAME UUID TYPE DEVICE
ens33 e2301185-1a8d-4b12-b1c7-bfbdf84f7a50 --ethernet ens33
附加:
(1)给ens37再添加一个ip地址
[root@despotic ~]# nmcli connection modify ens37 +ipv4.addresses "192.168.27.37/16" ipv4.gateway 192.168.0.1
[root@despotic ~]# nmcli connection down ens37
Connection 'ens37' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/)
[root@despotic ~]# nmcli connection up ens37
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/)
可以看见ens37有两个ip
[root@despotic ~]# ip addr show ens37
: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP qlen
link/ether :0c::5f::9d brd ff:ff:ff:ff:ff:ff
inet 192.168.27.36/ brd 192.168.255.255 scope global ens37
valid_lft forever preferred_lft forever
inet 192.168.27.37/ brd 192.168.255.255 scope global secondary ens37
valid_lft forever preferred_lft forever
inet6 fe80::8de7:fb4:1c03:22da/ scope link
valid_lft forever preferred_lft forever
(2)给ens37加一个ipv6的地址
[root@despotic ~]# nmcli connection modify ens37 ipv6.addresses ::/ ipv6.gateway :: ipv6.dns ::
[root@despotic ~]# nmcli connection reload
[root@despotic ~]# nmcli connection down ens37
Connection 'ens37' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/)
[root@despotic ~]# nmcli connection up ens37
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/)
可以看见ens37中已经有了ipv6的地址
[root@despotic ~]# ifconfig
ens37: flags=<UP,BROADCAST,RUNNING,MULTICAST> mtu
inet 192.168.27.36 netmask 255.255.0.0 broadcast 192.168.255.255
inet6 fe80::8de7:fb4:1c03:22da prefixlen scopeid 0x20<link>
inet6 :: prefixlen scopeid 0x0<global>
ether :0c::5f::9d txqueuelen (Ethernet)
RX packets bytes (6.4 MiB)
RX errors dropped overruns frame
TX packets bytes (53.1 KiB)
TX errors dropped overruns carrier collisions
ping一下也可以pin通
[root@despotic ~]# ping6 ::
PING ::(::) data bytes
bytes from ::: icmp_seq= ttl= time=0.121 ms
bytes from ::: icmp_seq= ttl= time=0.128 ms
^C
--- :: ping statistics ---
packets transmitted, received, % packet loss, time 1000ms
rtt min/avg/max/mdev = 0.121/0.124/0.128/0.011 ms
注意:
有的时候配置可能没有ipv4.gateway这个选项,可用如下方式配置
ipv4.address "192.168.0.11/24 192.168.0.1"
使用ip addr show eth1 | grep ipv4 可以看见有一条是这样写的,这条信息包含了ip,掩码,网关
ipv.addresses { ip = 192.168.0.11/, gw = 192.168.0.1 }
本教程到此结束
如果有什么建议或者不明白的地方,欢迎留言或者私信我,看见第一时间回复
本人Linux菜鸟,还望各路Linux大神多多指教。
附:
nmcli参数和网络配置文件关系对照表
| nmcli con mod | ifcfg-*文件 |
|---|---|
| ipv4.method manual |
BOOTRROTO=none |
| ipv4.method auto |
BOOTRROTO=dhcp |
| ipv4.address "192.168.0.10/24 192.168.0.1" |
IPAEDDR=192.168.0.10 PREFIX=24 GATEWAY=192.168.0.1 |
| ipv4.dns 8.8.8.8 |
DNS=8.8.8.8 |
| ipv4.dns-search example.com | |
| ipv4.ignore-auto-dns true |
PEERNDS=no |
| connection.autoconnect yes |
ONBOOT=yes |
| connection.id eth0 |
NAME=eth0 |
| connection.interface-name eth0 |
DEVICE=eth0 |
| 802-3-ethernet.mac-address... |
HWADDR=... |
Linux 使用nmcli配置网络的更多相关文章
- 虚拟机Linux系统下配置网络
虚拟机上安装Redhat9.0后是没有网络的,而本来的Windows系统是可以上网的,此时想在Redhat上网就需要在Linux系统上配置网络,以下是笔者自己配置的一点心得. 1.电脑本机系统打开网络 ...
- linux进阶之nmtui和nmcli配置网络
CentOS7配置网络推荐使用NetworkManager服务(不推荐network服务). 图形化方式:nmtui或Applications->System Tools->Setting ...
- linux 虚拟机模拟配置网络路由环境-简版
前言:网络路由不管是平常在家里,还是在公司中,都是必需配置的,所以还是非常重要的,今天小编就给大家做个配置网络路由配置的小实验,仅供大家参考. 一.首先,来简单介绍一下网络路由. 1. 网络路由: ...
- Linux系统下配置网络、JAVA环境,配置tomcat,mysql
一.配置网络 1.进入自己的系统,并跳转到network-scripts 2.编辑 3.查看系统的信息 4.将其添加到刚刚的if-cfg-eth0中 5.重启网络 6.这个时候ping百度还是ping ...
- Linux之临时配置网络(ip,网关,dns)+永久配置
作业一:临时配置网络(ip,网关,dns)+永久配置 配置网络信息 [root@localhost ~]# ifconfig eno16777736: flags=4163<UP,BROADCA ...
- 练习:使用nmcli 配置网络连接
显示所有连接 # nmcli con show 显示活动连接的所有配置信息 # nmcli con show "System eth0" --->引号内为连接的网卡名称 显示 ...
- CentOS使用nmcli配置网络
nmcli 查看网络设备信息 nmcli dev status 查看所有连接的列表 nmcli connection show nmcli connection show --active 查看活动连 ...
- Linux初体验--配置网络(CentOS7)
在安装好虚拟机和操作系统后,一台合格的网络设备当然是要冲浪啊. 一.记下自己的网络配置 二.打开终端,输入命令 三.修改文件 保存后退出(wq). 四.重启网络服务 systemctl restart ...
- (转)linux中nmcli命令的使用及网络配置
原文:https://blog.51cto.com/groot/1847482 http://www.178linux.com/44076----CentOS7中nmcli网络管理及使用详解 http ...
随机推荐
- 用Python抓取网页并解析
软件版本 python:2.7.12 网页抓取库 网页抓取库为requests, github地址为:https://github.com/requests/requests, 文档地址为:http: ...
- C#源码发送简单的HTTP请求
如下代码内容是关于C#发送简单的HTTP请求的代码,应该能对大家有用处. using System;using System.Collections.Generic;using System.Linq ...
- 7.2.5 多层嵌套的if语句
7.2.5 多层嵌套的if语句 在编写程序的代码之前要先规划好.首先,要总体设计一下程序. 为方便起见,程序应该使用一个连续的循环让用户能连续输入待测试的 数.这样,测试一个新的数字不必每次都要重新运 ...
- 2018-2019-2 20175311 实验二 《Java开发环境的熟悉》实验报告
2018-2019-2 20175303 实验二 <Java开发环境的熟悉>实验报告 一.实验准备 1.了解掌握实验所要用到的三种代码 伪代码 产品代码 测试代码 2.IDEA中配置单元测 ...
- atom插件
1.Sync Settings 搭配github,同步你的atom插件信息,配置信息,让你轻松实现一台电脑配置,多台电脑共享. 2.Emmet 能够基于Emmet语法产生HTML,做过前段开发的不会不 ...
- redis哨兵架构的基础知识及部署和管理
一.前言 1.哨兵的介绍 sentinal,中文名是哨兵 哨兵是redis集群架构中非常重要的一个组件,主要功能如下 ()集群监控,负责监控redis master和slave进程是否正常工作 ()消 ...
- 解决idea spring boot项目中target中没有同步更新最新目录文件及资源
idea不像eclipse那样自动将新保存的文件或目录及其他资源更新到target目录中,必须在pom.xml中设置 <build> <resources> <resou ...
- Python全栈开发记录_第十篇(反射及选课系统练习)
反射机制:反射就是通过字符串的形式,导入模块:通过字符串的形式,去模块中寻找指定函数,对其进行操作.也就是利用字符串的形式去对象(模块)中操作(查找or获取or删除or添加)成员,一种基于字符串的事件 ...
- Intellij IDEA快捷键大全汇总(2019更新)
Intellij IDEA快捷键大全汇总(2019) Ctrl+Shift + Enter,语句完成“!”,否定完成,输入表达式时按 “!”键 Alt+回车 导入包,自动修正 Ctrl+N 查找类 ...
- IntelliJ IDEA 工程Java文件上红色的无效符
IntelliJ IDEA 工程Java文件上红色的无效符(红色表示该类是不可编译文件) 1.查看Java.resources文件夹 如图所示,是因为没有配置 2.在Java文件夹点击右键找到Mark ...