virt-manager命令打开虚拟机管理:
点击左下角的Add Hardware:
选择Neteork添加网卡:
查看有两块网卡:
使用ifconfig命令查看网卡个数:
命令 | 含义 |
---|---|
ping ip | 检测网络是否通畅。ping之后显示的time表示主机的数据到达目标主机,再给反馈后一共花费的时间,也叫网络延迟 |
ping -c 1 ip | ping 1 次 |
ping -w1 ip | 等待1秒。假如ping不通的时候,要等一段时间,才会显示结果,使用该命令后,可以优化检测结果,只等1秒。w、c和数字之间,加不加空格都可以 |
ping -c1 -w1 ip | ping1次等待1秒 |
1)检测网络是否通畅:
2)使用w和c参数分别检测网络:
3)同时使用w和c参数进行网络检测:
命令 | 含义 |
---|---|
ifconfig | 查看或设定网络接口。可以直接用该方式查看ip,也可以使用ifconfig +设备名,例如ifconfig ens3来查看ip |
ifconfig device ip netmask 255.255.255.0 | 设定ip.注意该方式设定ip,后面不能写24 |
ifconfig device down | 关闭 |
ifconfig device up | 开启 |
1)查看ens3设备ip:
2)关闭该设备:
3)开启该设备:
4)设定ip并查看:
与其他主机无法通信,重启、关闭、开启该连接,ip恢复为原来的ip:
注意:使用ifconfig ens3 172.25.254.100 netmask 255.255.255.0命令设定ip后,ping别的主机是不通的,使用nmcli命令reload,down,up,后,发现ip又还原了。这说明ifconfig设定ip的方式是临时的,ip还原后再ping是可以通的,所以如果使用该方式去设定ip,要保证设定的网卡是没有配置文件的,也就是说,该网卡之前没有设定过,没有被占用。这样使用ifconfig可以成功,也可以ping通,但是重启系统之后,该ip就会消失,因为是临时设定,甚至使用nmcli down掉后,ip也会消失
命令 | 含义 |
---|---|
ip addr | 查看或设定网络接口,可以用ip addr查看ip |
ip addr show | 检测或查看ip。也可以给后面+设备名字,eg ip addr show ens3 |
ip addr add ip/24 dev device | 设定 |
ip addr del dev device ip/24 | 删除 |
1)查看ip:
查看ip:
查看某一设备ip:
2)添加ens3的ip,可以看到ens3现在有两个ip:
删除ip:
注意:
1)查看node2的ip:
输入nm-connection-editor命令查看网络连接:
修改ip:
注意:配置网络时,之所以选Manual手动配置,而不选自动配置,是因为自动配置需要一个dhcp服务器,该服务没有开启时,选手动配置。
2)修改完成后查看ip,未发生改变,这是因为网卡已经处于工作状态了:
重新加载,发现ip并未更改i成功,这是因为对应的网卡没有重启:
关闭链接,再开启链接,发现ip更改成功:
注意:
当为无图形模式时,想要更改网络ip,需要使用nmtui命令。
1)输入该命令,然后回车:
2)出现一个框,此时无法使用鼠标,需要使用上下建和tab建去选,选择edit a connection 编辑一个网络,其他步骤同图形下的ip修改:
3)注意在选Device时,可以ifconfig查看一下,有什么设备就输入什么设备,这里是没法自己选的,但是在图形里是自己选的;选ipv4里的Manual,然后点击show,添加ip即可:
4)查看ip,并未修改成功:
关闭重启连接后,查看ip,修改成功:
上面的网络设定工具设定ip是暂时的,想要用命令的方式永久设置ip,需要用nmcli命令
命令 | 含义 |
---|---|
nmcli | NetworkManager必须开启 |
nmcli device connect 设备名 | 启用该网卡 |
nmcli device disconnect 设备名 | 关闭该网卡 |
nmcli device show 设备名 | 查看网卡信息 |
nmcli device status 设备名 | 查看网卡服务接口信息 |
nmcli connection show | 查看连接 |
nmcli connection down connection-name | 关闭连接 |
nmcli connection up connection-name | 开启连接 |
nmcli connection delete connection-name | 删除连接 |
nmcli connection add type ethernet con-name lhy ifname ens3 ip4 172.25.254.100/24 | 添加连接 |
nmcli connection modify lhy ipv4.addresses 172.25.254.200/24 | 更改 |
1)查看nmcli命令的内容:
查看nmcli device命令的内容:
查看nmcli device show命令的内容:
查看设备状态:
2)关闭网卡:
开启网卡:
3)查看连接:
删除连接:
添加连接:
关闭、重启连接:
网络配置目录:/etc/sysconfig/network-scripts/,之前使用图形或命令的形式修改ip,本质上都是在该文件中修改
网络配置参数 | 含义 |
---|---|
ifcfg-xxxx | vim ifcfg-xxx,前面的ifcfg是固定格式,后面的名字相当于图形里面的conection-name。 |
DEVICE=xxx | 设备名称/网卡名称 |
BOOTPROTO=dhcp/static/none | 设备工作方式。如果这里写的是none,表示网卡工作模式是手动指定ip的方式;static也是手动指定ip;dhcp表示自动获取ip的模式 |
ONBOOT=yes | 网络服务开启时自动激活网卡 |
IPADDR= | IP地址。想设置多个ip时,可以使用 ipaddr0= ,ipaddr1= |
PREFIX=24 | 子网掩码 |
NETMASK=255.255.255.0 | 子网掩码。这个和上面这两种方式都可以表示子网掩玛,当设置两个ip时,也要写两个子网掩玛,即使使用的分别是上下这两种,也要分别给后面加上0和1。 |
NAME= | 接口名称 |
1)编辑ifcfg-lhy文件,注意如果进入网络配置目录下,将里面的文件删除,但实际上它在系统中还是存在的,需要使用 nmcli connection reload即可:
输入内容如下:
查看ip:
2)再次编辑该文件,设定两个ip、两个子网掩玛和connection-name:
重新加载、关闭、开启连接,显示有两个ip:
3)当记不住这些配置参数时,可以进入 /usr/share/doc/initscripts目录,ls 查看里面有一个sysconfig.txt文件 ,less sysconfig.txt,里面使用关键字可以找到参数用法:
网络配置目录:vim /etc/sysconfig/network-scripts/ifcfg-ens3
1)进入该配置目录下的,vim ifcfg-lhy文件,进行配置:
查看设定,并没有生效:
进行up开启连接时,报错,这是因为dhcp获取ip是从dhcp服务器处获得的,所以需要手动搭建一个dhcp服务器,具体搭建过程见下面第12节:
输入ifconfig 出现的 ‘lo’就是回环接口,其ip都是127.0.0.1,其主要作用是,负责本机的服务和服务之间的沟通。一般情况不做该接口设定,因为一旦设定,很多服务就无法再运行。
命令 | 含义 |
---|---|
systemctl start firewalld | 开启防火墙 |
firewall-cmd --list | |
firewall-cmd --permanent --add-masquerade | |
firewall-cmd --reload | 重新加载该服务 |
firewall-cmd --list-all |
1)将主机设置成路由器:
注意:masquerade: yes表示地址伪装功能开启,真实主机变成路由器
2)在全局网关配置文件处,设置虚拟机网关:
3)真机ping百度:
虚拟机ping百度ip,此时是不能ping域名的,因为没有设定DNS:
配置文件:vim /etc/sysconfig/network,全局网关,针对所有没有设定网关的网卡生效
1)配置网关文件:
2)重启连接,查看网关:
配置文件:vim /etc/sysconfig/network-scripts/ifcfg-ens160
进入该文件后,假设里面的ipaddr0=172.25.254.136;ipaddr1=172.25.254.6;那么设定网关是就要gateway0= ;gateway1=
1)在改配置文件中添加网关:
2)重启连接,查看网关:
3)删除网关:
编辑/etc/hosts文件,输入百度的ip和其对应的域名:
ping百度的域名:
1)指定从哪里获得DNS:
ping其他网站的域名:
2)dig+域名可以查看该DNS服务是谁提供的:
编辑网络配置文件:
在后面指定从该ip获取DNS解析:
重启连接,查看dns指向文件,发现其nameserver变为114.114.114.114:
编辑/etc/nsswitch.conf文件:
文件中hostos后默认的优先级:
修改优先级:
测试:
1)在node2中搭建dhcp服务器,需要有一个安装包,该安装包可以从镜像文件中获取,可以进入真机的超级用户身份,找到镜像文件然后右击,点击 Open With Disk Image Mounter,就会出现一个页面,这相当于已经挂载成功,可以在其所在的目录下df查看是否挂载:
2)进入/run/media/kiosk/RHEL-8-2-0-BaseOS-x86_64,查看软件包的位置:
3)在真机上使用scp将该软件包传输到node2的/mnt下,scp dhcp-server-4.3.6-40.el8.x86_64.rpm [email protected]:/mnt
进入node2,查看:
在node2上,安全安装, rpm -ivh /mnt/dhcp-server-4.3.6-40.el8.x86_64.rpm:
1)在node2上进行配置,dhcp服务的主配置文件是 /etc/dhcp/dhcpd.conf,可以cat进入查看,发现该文件是空的:
2)它里面提示,可以查看模板,所以可以直接把模板内容复制到配置文件中,因为模板文件中参数都有,也就是利用模板生成配置文件:
3)vim /etc/dhcp/dhcpd.conf,删除不需要的。从36行之后,都不需要,27、28行不要。删除完后,可以进行配置,第7行有个公司域名,可以先自己写;第八行写的是dns的地址;后面第30行,subnet是网段,需要看真机的网段是多少;netmask,子网掩玛;把32行内容注释起来;31行是分配地址的范围:
4)写好配置文件后,systemctl enable --now dhcpd ,再systemctl status dhcpd
查看服务状态:
5)回到node1,重新up,看到自动被分配到了ip:
6)在node2中查看,它分配给了那块网卡是有记录的,可以在node2中 less /var/lib/dhcpd/dhcpd.leases 查看,因为该文件中记录了ip是如何分配的,可以看到分配给了node1地址:
注意:若有很多台主机上都有dhcp服务,并不是谁给分配ip都接受,可以拔掉网线,就是本机内部自行分配。