一.配置实验环境及了解网络配置
1、先在真机里进入超级用户,在超级用户下输入virt-manager打开Virtual Machine Manager窗口,选中想要设置的虚拟机,点左上角的灯泡按钮(Show Virtual hardware details)在左侧区域右键添加,选择Add Hardware,选择Network,将Device model改为virtio,finish保存,即可添加一个多的网卡。操作完成后记得退出超级用户。
2、打开设置好的虚拟机,进入/etc/sysconfig/network-scripts目录下,修改ifcfg-xxx文件,设置ip,再修改另一ifcfg-xxx文件,设置另一ip在另一网卡下,修改完成后用systemctl restart network命令重启network,然后用命令ip addr show来查看是否修改成功,另一虚拟机也是这样的操作。
3、如何在无图形模式下修改IP信息
命令 | 功能 |
---|
systemctl start NetworkManager | 开启NetworkManager |
ip addr show | 查看IP |
nmtui | 无图形模式下修改IP信息 |
systemctl restart network | 重启network |
ip addr show | 查看IP修改是否成功 |
4、什么是IP ADDRESS
internet protocol ADDRESS :网络进程地址
ipv4 internet protocol version 4
1.2x32
ip是由32个0或1组成的,如11111110.11111110.11111110.00000000=254.254.254.0
5、什么是子网掩码
它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网,哪些位标识的是主机的位掩码。它不能单独存在,必须结合IP地址一起使用,作用是:将某个IP地址划分成网络地址和主机地址两部分。
6、ip通信判定
当网络位一致时,主机位不一致的两个IP可以直接通讯,处于同一局域网下。
7、网络设定工具
ping
命令 | 功能 |
---|
ping | 检查网络是否接通 |
ping -c 1 | ping一次,数字可替换其他 |
ping -w 1 | 等待一秒 |
ping -c 1 -w 1 ip | ping1次,等待一秒,若时间结束时没有ping成功,则结束 |
ifconfig
命令 | 功能 |
---|
ifconfig | 查看网络接口 |
ifconfig device ip/24 | 临时设定网络接口,device必须是一个物理事实,不能随意创造 |
ifconfig device down/up | 开启或关闭 |
ip addr
命令 | 功能 |
---|
ip addr show | 检测该网络接口 |
ip addr add ip/24 dev device | 临时设定该网络接口 |
8、图形方式设定ip
nm-connection-editor
9、命令方式设定网络(需NetworkManager开启)
命令 | 功能 |
---|
nmcli device connect eth0 | 启用eth0网卡 |
nmcli device disconnect eth0 | 禁用eth0网卡 |
nmcli device show eth0 | 显示该网卡信息 |
nmcli device status eth0 | 查看该网卡服务接口信息 |
nmcli connection show | 查看网卡信息 |
nmcli connection down westos | 关闭该网卡连接 |
nmcli connection up westos | 启用该网卡连接 |
nmcli connection delete westos | 删除网卡连接 |
nmcli connection add type ethernet con-name westos ifname eth0 ip4 ip/24 | 添加网卡连接 |
nmcli connection modify westos ipv4.method auto | 更改该网卡连接模式为auto |
nmcli connection modify westos ipv4.method munual | 更改该网卡连接模式为munual |
nmcli connection modify westos ipv4.address IP/24 |更改该网卡连接IP
10、管理网络配置文件
网络配置目录:/etc/sysconfig/network-scripts/
网络配置文件的命名规则:
文件名:ifcfg-filename
命令 | 功能 |
---|
DEVICE=XXX | 设备名称,必须是事实 |
BOOTPROTO=dhcp/static/none | 设备的工作方式dhcp/静态 |
ONBOOT=yes | 网络服务开启时,自动激活网卡 |
IPADDR=IP | 想设定的IP地址 |
PREFIX=24/NETMASK=255.255.255.0 | 子网掩码设定 |
NAME=xx | 接口的名称 |
systemctl restart network | 重启network |
dhcp网络设定
命令 | 功能 |
---|
vim /etc/sysconfig/network-scripts/ifcfg-eth0 | 修改BOOTPROTO=dhcp |
systemctl restart network | 重启network |
二.网络地址转换
1、概念了解
名称 | 功能 |
---|
SNAT | 来源网络地址转换(路由器下的一条策略) |
路由器 | 地址转换(使来源的数据能够到达目的地) |
DNAT | 目的地地址转换(也需要用路由器来转换) |
注:因为一个是内网出去,一个是从外网返回,所以是两个不一样的;这两个功能都是由火墙来做的,能做这样策略的火墙叫路由器。
注:路由器上两个不同网络区域的ip的通信是通过内核路由功能通信的
网关GATEWAY|路由器上和你的ip在同一个网络区域下的ip,负责接收你发送到路由器上的所有数据包。只有想访问的一方需要设置网关,被访问的不需要设置。
2、 不同网络区域不同机上数据传送的过程:
先由发送端将数据发送,由路由器上的发送端的网关接收所有数据包,通过路由器上的内核路由功能将数据包传递给路由器上与接收端相同网络区域的ip,通过与接收端相同网络区域的ip将数据包传递给接收端。
所用到的操作:
(1)在发送端:
命令 | 功能 |
---|
vim /etc/sysconfig/network | 修改此文件,添加GATEWAY=网关,设置网关 |
systemctl restart network | 重启network,使修改生效 |
route -n | 查看网关是否修改成功 |
(2)在路由器:
命令 | 功能 |
---|
firewall-cmd --permanent --add-masquerade | 添加masquerade功能,打开NAT,打开后火墙具有决策的网络地址转换的功能 |
firewall-cmd --reload | 加载刚刚添加的功能,使修改生效 |
firewall-cmd --list-all | 显示火墙信息,查看masquerade功能是否开启 |
sysctl -a | grep ip_forward |
(3)测试:
在发送端输入ping 接收端ip |观察网络是否能够接通,若接通则操作成功,若不能接通则需要查错
在路由器中输入 vim /etc/sysctl.conf 添加 ip_forward = 0,保存后输入systemctl restart network重启,使修改生效,再次查看内核路由功能是否关闭,关闭后再次在发送端测试,此时网络不能接通。
三.如何让虚拟机联网:
1、给真机联网
(1)从右上角脸上wifi后,在真机中输入:
命令 | 功能 |
---|
ip route del default | 删除之前的网关,让真机连上wifi的网关 |
ping www.baidu.com | ping以下百度的域名,查看当前网络是否接通,若接通,得到此域名对应的ip |
ifconfig | 查看真机现有的网卡及对应的ip,找出和虚拟机同区域网的ip所在的网卡,以及可以上网的网卡 |
ip addr show br0 | 查看br0网卡的信息,找到与虚拟机同区域网的ip |
ip addr show wlp3s0 | 查看wlp3s0网卡的信息,找到可以上网的ip |
(2)将真机设置为一个路由器:
命令 | 功能 |
---|
firewall-cmd --permanent --add-masquerade | 添加masquerade功能,打开NAT,打开后火墙具有决策的网络地址转换的功能 |
firewall-cmd --reload | 加载刚刚添加的功能,使修改生效 |
firewall-cmd --list-all | 显示火墙信息,查看masquerade功能是否开启 |
sysctl -a | grep ip_forward |
2、在虚拟机中操作:
(1)在刚刚作为路由器的虚拟机server中操作:
命令 | 功能 |
---|
vim /etc/sysconfig/network | 修改此文件,添加GATEWAY=网关,设置网关 |
systemctl restart network | 重启network,使修改生效 |
route -n | 查看网关是否修改成功 |
测试:
ping 14.215.177.38(百度对应的ip) |测试是否能够接通,若可以则进行下一步操作
(2)在单网卡虚拟机desktop(此虚拟机的网关是server的某一ip)中操作:
测试:
ping 14.215.177.38(百度对应的ip) |测试是否能够接通,若可以则进行下一步操作
四.如何使用域名接通网站
1、
dns |把ip与域名对应的文件提供给其他人(提供解析功能的主机)
文件 | 作用 |
---|
/etc/hosts | 本地解析文件 |
/etc/resolv.conf | dns的指向文件 |
命令 | 功能 |
---|
vim /etc/hosts | 打开此文件,输入ip 对应域名,将ip和域名对应起来告知电脑(但在此文件中,只有写了的才能接通) |
vim /etc/resolv.conf | 打开此文件,输入nameserver 114.114.114.114,开启dns功能 |
测试:
操作 | 作用 |
---|
ping www.qq.com | 检测是否能够接通 |
打开火狐浏览器输入其他网址 | 检测没有写入hosts的域名能否被系统对应查找到 |
2、解析顺序
(1)默认解析顺序:hosts>resolv.conf
(2)更改解析顺序
可通过 vim /etc/nsswitch.conf 更改此文件的39行调整解析顺序
修改内容 | 作用 |
---|
hosts: files dns | 默认解析顺序hosts>resolv.conf时 |
hosts: dns files | 更改后,resolv.conf的解析优先级将大于hosts |