一、NetworkManager服务:NetworkManager - Linux Networking made Easy
NetworkManager简介:NetworkManager由一个管理系统网络连接、并且将其状态通过D-BUS(是一个提供简单的应用程序 互相通讯的途径的自由软件项目,它是做为freedesktoporg项目的一部分来开发的。)进行报告的后台服务,以及一个允许用户管理网络连接的客户 端程序。
NetworkManager的优点:简化网络连接的工作,让桌面本身和其他应用程序能感知网络。
nmcli 命令中的 nm 是 NetworkManager 的缩写
所以,从字面上理解, nmcli 是 NetworkManager 的客户端命令,所以使用nmcli指令,请确保NetworkManager服务开启
nmcli 是 NetworkManager 的命令行控制器,下面来看看nmcli如何使用
nmcli dev dis dev名 ##关闭该接口,并暂时的停止自动连接
nmcli net off ##关闭所有的可管理接口
nmcli con mod id ##修改一个连接
nmcli dev status ##列出所有的设备
nmcli con show ##列出所有的连接
1.添加一个静态ip
nmcli con add ##增加一个连接nmcli con add
nmcli connection add con-name lei type ethernet ifname eth0 ip4 172.25.254.156/24 ##添加一个静态网络
con-name ##网络名称
type ##网络类型
ifname ##网络接口名称
autoconnection ##是否自动连接
ipv4 ##ip配置
nmcli con show ##显示出了刚添加的网络,所以成功
2.添加一个动态ip
nmcli connection add con-name lei type ethernet ifname eth0 autoconnect yes ##添加一个动态网络,由dhcp自动分配网络
3.更改网络
nmcli con up id名 ##激活一个连接
nmcli con down id名 ##取消该连接,如果是自动连接的网络会重新连接
注:用上面指令可以重启指定的网卡
4.将静态网络改为动态网络
nmcli connection modify lei ipv4.method auto ##将网络改为动态的
5.将动态网络改为静态网络
nmcli connection modify lei ipv4.addresses 172.25.254.156 ##将网络改为静态的
6.删除网络
nmcli con del lei ##删除lei这个网络
二、dns
DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。在RFC文档中RFC 2181对DNS有规范说明,RFC 2136对DNS的动态更新进行说明,RFC 2308对DNS查询的反向缓存进行说明。
1.之前的单跳路由实验中,不可以ping网址,现在在虚拟机编辑/etc/hosts文件中添加ip 域名,然后在ping的时候就可以直接输入域名了,前提是你已经设置好了单跳路由,把真机当作路由器
vim /etc/hosts
然后在ping百度,就可以了
2. 在DNS指向文件/etc/resolv.conf文件中添加知道域名解析的nameserver
eg:在DNS指向文件那种添加nameserver 114.114.114.114
vim /etc/resolv.conf
然后添加如下字段
nameserver 114.114.114.114
就可以ping通网上的网站了
注意:在动态网络下,添加是临时的;在静态网络下不是临时的
3./etc/nsswitch.com 文件确定DNS解析的优先级顺序
我现在在hosts文件中添加csdn的域名47.95.164.112,而在dns中设置的dnsserver是114的,那么默认情况下是通过那个服务来ping通csdn网站呢,默认是走的hosts的文件,因为默认是本地的优先级高,那么如何使用dnsserver这个服务呢,
vim /etc/nsswitch.com
如图,第39行的file改成dns即可
在使用ping命令的时候走的就是dnsserver服务了
三、实验
1.动态分配网络时候的dns设定
当网络设置为dhcp(如何设置请看我linux中的网络配置那篇文章)的时候,ip,子网掩码以及网关等都是自动分配的,在这种情况下,会自动的分配一个dns
如果我不想用这个dns,然后我自己在配置文件中添加一个dns服务器的ip,在系统重启后,这个dns服务器会消失不见
那么如何才能使用我自己设定的dns服务器呢
vim /etc/sysconfig/network-scripts/ifcfg-eth0
将第13行的PEERDNS改为no
dns就不会自动分配,然后就可以在dns的配置文件中添加我们想要使用的dns,在ping的时候就使用自己设定的dns了
2.静态设置dns
静态网络下,在/etc/resolv.conf文件中添加的nameserver 重启网络不会消失
若在网络设置中添加DNS,则这个DNS会覆盖掉/etc/resolv.conf文件中的手动设置的一个nameserver
注意:只是覆盖掉,不是丢失
若用PEERDNS=no,则会不显示网络中设定的DNS,手动添加的nameserver重新显示出来。
来源:CSDN
作者:Mr.o.j
链接:https://blog.csdn.net/weixin_40543283/article/details/83374388