目录
一、NetworkManager的特点
1、NM能够管理各种网络
有线网卡、无线网卡
静态IP、动态IP
以太网、非以太网
物理网卡、虚拟网卡
2、工具齐全
支持命令行、文本界面、图像化界面、web界面。
3、广纳天地
管理各种网络、有线、无线、物理、虚拟
4、参数丰富
5、大势所趋
在红帽9版本只能通过NM管理网络。
二、配置网络
网络接口是指网络中计算机或网络设备与其他设备实现通讯的进出口,计算机网络接口即网卡。在红帽版本7之后,有一种新的方式为网络接口命名,该方式是根据固件、设备拓扑、设备类型和位置信息分配固定的名字。网络接口的名称前两个字符为网络类型符号。如en--以太网、wl--无线局域网、ww--无线广域网。
一个网络接口,可以有多个网络连接,但同一时间只能由一个网络连接处于活动状态。
1、使用ip命令临时配置
1)查看网卡在网络层的配置信息
php
ip [-s] addr show [网卡设备名]
-s :表示增添显示相关的统计信息,接受(RX)和传送(TX)的数据包数量等。
2)查看网卡在数据链路层的配置信息
php
ip [-s] link show [网卡设备名]
3)添加或者删除临时的网卡
php
#IPV4
ip -4 addr add|del IP地址/掩码 dev 网卡设备名
#IPV6
ip -6 addr add|del IP地址/掩码 dev 网卡设备名
4)禁用和启动指定网卡
php
ip link set dev 网卡设备名 down|up
2、修改配置文件
需要该系统有 network 服务,不建议使用这种方法去修改配置文件。
在文件在 /etc/NetworkManager/system-connections 目录下
php
[root@node1 system-connections]# cat ens160.nmconnection
[connection] #会话名
id=ens160
uuid=11cefb13-fe00-3919-a500-8dee5a7696c0
type=ethernet
autoconnect-priority=-999
interface-name=ens160
timestamp=1694431990
[ethernet] #网络类型
[ipv4] #添加IPV4区域
address9=192.168.78.140/24
method=manual #IP模式
[ipv6] #添加IPV6区域
addr-gen-mode=eui64
method=auto
[proxy]
修改之后需要重新启动、加载、连接网卡
php
[root@node1 ~]# systemctl restart network-online.target
[root@node1 ~]# nmcli connection reload
[root@node1 ~]# nmcli connection up ens160
会话和网卡的关系:一个网卡可以有多个会话,但是只在一个时刻只能连接到一个会话。
3、nmcli命令行工具
这种方法是比较推荐使用的。
1)查看网卡
php
[root@node1 ~]# nmcli device #简写nmcli d
DEVICE TYPE STATE CONNECTION
ens160 ethernet connected ens160
lo loopback unmanaged --
2)查看会话
php
[root@node1 ~]# nmcli connection #简写nmcli c
NAME UUID TYPE DEVICE
ens160 11cefb13-fe00-3919-a500-8dee5a7696c0 ethernet ens160
3)配置已存在会话的网卡IP地址
非交互式
php
nmcli connection modify 网卡名 ipv4.method 地址获取方式 ipv4.addresses IPV4地址 ipv4.gateway 网关地址 ipv4.dns DNS地址 autoconnect yes/no
#例如
[root@node1 ~]# nmcli connection modify ens160 ipv4.method manual
ipv4.addresses 192.168.78.150/24 ipv4.gateway 192.168.78.1
ipv4.dns 8.8.8.8 autoconnect yes
再连接网卡
php
nmcli connection up 网卡名
交互式方式
php
[root@node1 ~]#nmcli connection edit ens160
nmcli> goto ipv4
nmcli ipv4> set addresses 192.168.78.160/24
nmcli ipv4> activate
Monitoring connection activation (press any key to continue)
Connection successfully activated (D-Bus active path:
/org/freedesktop/NetworkManager/ActiveConnection/2)
nmcli ipv4> quit
[root@node1 ~]# nmcli c up ens160
4)添加一个新会话
php
nmcli connection add type 指定网络类型 con-name 连接名字 ifname 网卡名
ipv4.addresses IP地址/掩码 ipv4.gateway 网关地址 ipv4.dns DNS服务器IP地址
ipv4.method ip地址获取方式 autoconnect yes/no
#例如
[root@node1 ~]# nmcli connection add type ethernet con-name test ifname ens170
ipv4.addresses '192.168.78.170/24' ipv4.gateway 192.168.78.100 ipv4.dns '8.8.8.8'
ipv4.method manual autoconnect yes
5)连接、断开、删除会话
php
nmcli connection up 网名 ---连接会话
nmcli connection down 网卡名 ---断开会话
nmcli connection delete 网卡名 ---删除会话
4、图形化配置
第一步、在命令行输入nmtui,会弹出如下图
第二步、可以利用上下左右回车键进行选择
选择Edit a connection 回车
第三步、然后移动到有右边添加、编辑、删除,如add添加网卡回车
第四步、选择图所示的网络类型,选择ethernet(以太网)回车,进入下图,选择ipv4 右边的show,展开如下图,然后为其添加IP地址/掩码长度、网关、DNS服务器、搜索域。配置好之后移动光标到最下面OK就添加成功。
第五步、在命令行连接一次刚才添加的网卡名
php
[root@node1 ~]# nmcli connection up 网卡名
5、cockpit配置示意图--web页面配置
第一步、开启cockpit.service服务
php
[root@node1 ~]# systemctl start cockpit.service
第二步、防火请允许cockpit服务,并重新加载一次防火墙
php
[root@node1 ~]# firewall-cmd --permanent --add-service=cockpit
Warning: ALREADY_ENABLED: cockpit
success
[root@node1 ~]# firewall-cmd --reload
success
第三步、访问http://IP:9090网页
IP是该主机已经存在的IP地址
访问之后会提示,该网站存在风险,点击高级,继续访问,然后输入主机的root账号和密码进行登录,然后来到如下页面
第四步、选择网路,根据需求进行添加或修改
三、测试网络
1、ping命令
检测网络连通性。
格式
php
ping [选项] 主机名或者IP地址
例如
php
[root@node1 ~]# ping -c 4 192.168.78.140
PING 192.168.78.140 (192.168.78.140) 56(84) bytes of data.
64 bytes from 192.168.78.140: icmp_seq=1 ttl=64 time=0.082 ms
64 bytes from 192.168.78.140: icmp_seq=2 ttl=64 time=0.319 ms
64 bytes from 192.168.78.140: icmp_seq=3 ttl=64 time=0.103 ms
64 bytes from 192.168.78.140: icmp_seq=4 ttl=64 time=0.096 ms
--- 192.168.78.140 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3108ms
rtt min/avg/max/mdev = 0.082/0.150/0.319/0.097 ms
2、tracepath命令
追踪并显示报文到达目标的主机所经过的路由信息。
格式
php
traecpath [选项] 主机名或IP地址
例如
php
[root@node1 ~]# tracepath -b 192.168.78.140
1: node1 (192.168.78.140) 0.421ms reached
Resume: pmtu 65535 hops 1 back 1
3、traceroute命令
利用ICMP 协议定位您的计算机和目标计算机之间的所有路由器,追踪数据包在网络上的传输时的全部路径,它默认发送的数据包大小是40字节。
格式
php
tracerout [选项] 主机名或IP地址
例如
php
[root@node1 ~]# traceroute -I 192.168.78.140
traceroute to 192.168.78.140 (192.168.78.140), 30 hops max, 60 byte packets
1 node1 (192.168.78.140) 0.124 ms 0.022 ms 0.006 ms
注:traceroute如果没有安装,使用时会提示你进行安装,安装了就可以使用。
四、通过域名访问主机
配置本地静态解析
在/etc/hosts文件下
php
#方法1
[root@node1 ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.78.140 www.master.com ----添加此行
[root@node1 ~]# ping www.master.com
PING www.master.com (192.168.78.140) 56(84) bytes of data.
64 bytes from www.master.com (192.168.78.140): icmp_seq=1 ttl=64 time=0.064 ms
64 bytes from www.master.com (192.168.78.140): icmp_seq=2 ttl=64 time=0.087 ms
64 bytes from www.master.com (192.168.78.140): icmp_seq=3 ttl=64 time=0.090 ms
64 bytes from www.master.com (192.168.78.140): icmp_seq=4 ttl=64 time=0.102 ms
^C
--- www.master.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3102ms
rtt min/avg/max/mdev = 0.064/0.085/0.102/0.013 ms
#方法2
[root@node1 ~]# echo '192.168.78.140 www.master_2.com' >> /etc/hosts
[root@node1 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.78.140 www.master.com
192.168.78.140 www.master_2.com
五、从网站下载文件
1、wget命令
用于终端命令行下载网络文件,英文全称"web get"
格式
php
wget [选项] 网址
常用选项:
-P :下载到指定的目录
-t :最大尝试次数
-b :后台下载模式
-c :断点续传
-p :下载页面内容所有资源,包括图片、视频等
-r :递归下载
例如
php
[root@node1~]wget -P /file www.baidu.com
1、curl命令
是一个网络工具,其主要作用是通过HTTP、HTTPS、FTP等方式下载/上传文件。
格式
php
curl 网站 [选项] [具体页面]
例如
php
[root@node11 ~]# curl www.baidu.com -o index.html
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2381 100 2381 0 0 20976 0 --:--:-- --:--:-- --:--:-- 21070
[root@node12 ~]# ll
total 4
-rw-r--r-- 1 root root 2381 Sep 12 20:30 index.html