网关
1.网关的概念
网关就是一个网络连接到另一个网络的关口(实质上是一个网络通向其他网络的ip地址)。
默认网关
一台主机如果找不到可用的网关,就把数据包发给默认指定的网关,由这个网关来处理数据包。
举例
如果有网络A和B,两台主机处在不同的网络里,要实现通信,必须要通过网关。网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某台主机。
补充
路由器上和客户主机处在同一个网段的ip叫做客户主机的网关。
即路由器集成了网关的功能,路由器可以实现网关的功能
2.设定网关
(1)命令方式(临时)
1.ip route add default via 192.168.xxxx #添加默认网关
2.ip route del default via 192.168.xxxx #删除默认网关
(2)文件方式(永久)
第一种:修改系统全局网关
vim /etc/sysconfig/network
GATEWAY=192.168.xxxx
systemctl restart NetworkManager
nmcli connection down 连接名称
nmcli connection up 连接名称
第二种:修改网卡设定网关
vim /etc/sysconfig/network-scripts/ifcfg-ensxx
DEVICE=ensxx
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.XXXX
NETMASK=255.255.255.0
GATEWAY=192.168.XXXX
systemctl restart NetworkManager
nmcli connection down 连接名称
nmcli connection up 连接名称
3.实验:让位于不同网段的主机通信
准备:
windows下的ip
虚拟机1的ip地址
用虚拟机1 ping windows主机,发现 ping 不通,而 ping 虚拟机2时,发现可以 ping 通。
实验设计:
(1)在虚拟机1中添加一个网卡,使虚拟机1变成双网卡主机
使用桥接模式
查看网卡
(2)设虚拟机1的两块网卡地址
ens160:192.168.9.100(和windows主机处在同一个网段)
ens256:192.168.145.100(和虚拟机2主机处在同一个网段)
第一步:修改ens160
第二步:重启服务-ens160
第三步:复制ens160的文件到ens256,并修改ens256文件。
cp -p:复制文件的内容、修改时间和访问权限。
第四步:重启服务-ens256
第五步:查看网卡
(3)在虚拟机1中打开内核路由功能
第一步:查看内核路由功能是否开启
sysctl -a:打印当前所有可用的内核参数变量和值
net.ipv4.ip_forward=0表示未开启
第二步:打开内核路由功能
sysctl -p:使更改立即生效
(4)在虚拟机1中打开地址伪装功能
firewall-cmd --list-all:查看端口开放情况
firewall-cmd --add:添加服务(masquerade 伪装服务)
firewall-cmd --reload:不中断服务的重新加载
检查一下:
(5)测试
第一步:在虚拟机2中 ping 192.168.9.105(windows主机)看能否 ping 通。
发现不能ping通
第二步:在虚拟机2中添加网关
第三步:尝试能否ping通
发现可以ping通,成功!
注意:在配置的时候出现两个问题
q1: windows主机可以ping通虚拟机1,但虚拟机1不能ping通windows主机。
a1: 要配置windows防火墙,步骤如下:
q2: 虚拟机的NAT模式和桥接模式
a2: 在此次实验中,我们虚拟机1和2的所有网卡都要设置为桥接模式。
桥接模式:这种模式下的虚拟机就像一台真正的主机,它可以访问该网段内的任何一台机器。(通信时,需属于同一网段)
NAT模式:虚拟机通过物理机连接上网络,即物理机是一个路由器。使用NAT模式可以实现在虚拟机内访问到互联网。
DNS
1.dns概念: 将域名转换成ip地址
2.dns服务器: 完成地址解析工作的主机
3.地址解析的三种方法:
(1)本地解析(临时):
vim /etc/hosts #本地解析文件
39.156.66.18 www.baidu.com
(2)dns服务器解析(临时):
vim /etc/resolv.conf #dns服务器指向文件
nameserver 114.114.114.114 #电信dns服务器
(3)dns服务器解析(永久):
vim /etc/sysconfig/network-scripts/ifcfg-ens160
DNS1=114.114.114.114
4.实验:
(1)设定虚拟机1和windows主机在同一个网段,虚拟机1网关和windows主机相同。
(2)在windows主机中 ping www.baidu.com 查看百度ip
(3)在虚拟机1中 ping 61.135.169.125 可以ping通,ping www.baidu.com不能ping通。
(4)编写/etc/hosts 文件
可以ping通百度了,但qq仍不能ping通。
(5)编写/etc/resolv.conf文件,利用dns服务器进行解析。
(6)发现可以ping通qq等等网站
网桥
在虚拟机3中设置桥接接口
1.查看是否有桥接接口,发现没有桥接接口。
2.将原有连接停掉后,编辑ifcfg-ens160文件。
3.编辑ifcfg-br0文件
4.重启网络
5.查看接口,发现已经存在。
或使用这个命令查看bridge设备
到这里网桥就配置成功了🌈