基础技术
问题:
1、电脑浏览器是如何打开百度的?
2、游戏客户端是如何连接服务器的?
3、购物节,电商服务器是如何顶住压力的?
网络设备
交换机:电脑之间相互通信,移动终端与电脑之间通信。
网络AP,全称为无线接入点(Wireless Access Point),是无线网络中的核心设备。它的主要作用是将各个无线网络客户端连接到一起,然后将无线网络接入以太网,从而达到网络无线覆盖的目的。
AP可以分为胖AP和瘦AP:
- 胖AP:也称为无线路由器,除无线接入功能外,一般具备WAN、LAN两个接口,支持地址转换(NAT)功能,多支持DHCP服务器、DNS,以及VPN接入、防火墙等安全功能。
- 瘦AP:也称无线网桥、无线网关,此无线设备的传输机制相当于有线网络中的集线器,在无线局域网中不停地接收和传送数据;任何一台装有无线网卡的PC或者移动终端均可通过AP来使用有线局域网络甚至广域网络的资源。
路由器:连接不同网络。
IP 地址
IP地址:用于 IP 报文在网络中的寻址,也用于标识一个节点。
IP 地址 = 网络位 + 主机位。例如:192.168.1.1
,该 IP 地址的网络位是 192.168.1
也就是它的网段。
子网掩码 决定了 网络位 的长度。例如:192.168.1.1
的子网掩码为 255.255.255.0
就代表前面的三段为网络位。
DHCP:自动给设备配置 IP 地址。
TCP 和 UDP
TCP(传输控制协议)和 UDP(用户数据报协议)的区别:
1、连接:
- TCP 面向连接的传输层协议,传输数据前要建立连接。
- UDP 无连接,可以传输数据。
2、服务对象:
- TCP 一对一的两点服务。
- UDP 支持一对一、一对多、多对多的交互通信。
3、可靠性:
- TCP 可靠交付数据,数据可以误差错、不丢失、不重复、按需到达。
- UDP 尽最大努力交付,不保证可靠交付数据。
4、拥塞控制和流量控制:
- TCP 有拥塞控制和流量控制,保证数据传输的安全性。
- UDP 网络拥堵也不会影响其发送速率。
5、首部开销:
- TCP 首部长,开销大。
- UDP 首部为 8 字节,固定不变,开销小。
6、传输方式:
- TCP 流式传输,没有边界,但保证顺序和可靠。
- UDP 一个包和一个包的发送,有边界,但可能丢包和乱序。
7、分片不同:
- TCP 数据大于 MSS 大小,就会在传输层切片,目标主机收到后再组装。
- UDP 数据大于 MTU 就会在 IP 层切片,目标主机收到后再组装。
MSS(最大分段大小):TCP 报文段中 TCP 数据字段的最大大小,它的值为 MSS 值减去 IPv4 Header(20 Btye) 和 TCP header(20 Btye) 得到。能被装入 MTU 中。
MTU(最大传输单元):数据链路层传输的帧大小,也就是网络链路中能够传输的最大数据包大小。
CDN
CDN(Content Delivery Network,内容分发网络) 是一个分布在不同地理位置的服务器群,用于缓存靠近最终用户的内容。CDN 可以快速传输加载互联网内容所需的资产,包括 HTML网页、JavaScript文件、样式表、图像和视频。
CDN 的工作步骤是这样的:
1、缓存内容:CDN 将源站的资源缓存到位于全国各地的 CDN 节点上。
2、用户请求资源:当用户请求某个网站或服务的资源时,请求会被路由到最近的 CDN 节点。
3、返回缓存资源:如果 CDN 节点有用户请求的资源缓存,就会返回缓存的资源给用户。
4、负载均衡:CDN 会将用户的请求分发到不同的服务器。
5、安全保护:CDN 提供 DDos 防护、改善安全证书及其他优化。
案例:配置 IP 地址
配置两台路由器的 IP 地址,让其可以进行通信。
我们在 eNSP 中选择路由器 AR2220 和 电线,让两个路由器的 GE 0/0/0 端口相连。
输入系统视图命令后,才能对设备进行配置:
system-view
然后我们进入端口:
interface GigabitEthernet 0/0/0
之后就可以配置地址了:
ip address 192.168.1.1 255.255.255.0
这样我们就把 RTA 路由 0/0/0 端口的 IP 地址配置完成了。
RTB 路由的配置就是镜像操作了。
接下来我们测试一下它们是否连接上:
ping 192.168.1.2
DHCP
我们可以用 DHCP 来进行网络 IP 地址的自动配置。
DHCP 是动态主机配置协议(Dynamic Host Configuration Protocol)的缩写。它是一种网络协议,用于自动为计算机或设备分配 IP 地址、子网掩码、默认网关以及其他网络配置。开启 DHCP 意味着网络中的设备可以自动获取 IP 地址和其他网络配置,而不需要手动配置。这样,网络管理变得更加简化和自动化,减少了出错的可能性,并且减轻了网络管理员的工作负担。
我们给路由器配上地址:192.168.1.1
。
然后我们点开 PC 机设置 DHCP 自动配置地址,但是因为我们没有开启 DHCP 的功能,所以事实上主机并没有分配有地址。
我们要做的是,将路由器视为服务器让它为主机们分配 IP 地址。
我们在路由器中输入命令,打开 DHCP 的功能:
dhcp enable
然后我们需要指定路由器的哪些接口要实现 DHCP 功能。
DNS
这里,如果我们想要 ping 通网络域名的话,就需要 DNS 服务器来实现域名解析,将网址变成 IP 地址。
DNS (Domain Name System,域名系统)将域名解析为 IP 地址的系统。
我们在 eNSP 中使用 Server 让它实现 DNS 服务,当它接入网络的时候也要给它配置地址,我们配置它的地址为 192.168.1.100
。
这时候,我们还要给路由器指定 DNS 服务器:
dhcp server dns-list 192.168.100
现在我们的 PC 机就有 DNS 服务器地址了
Gateway
顺着这个案例,我们看一下网关。
网关(Gateway)用于连接不同网络或协议之间进行数据转发和处理。
首先,我们让路由器连接一个主机,并配置主机 IP 为:100.100.100.100
,网关为:100.100.100.1
。
因为 PC 之间所在的网段不同,所以需要路由器作为网关连接这两个网段。
接下来,我们给路由器配置 100.100.100.1
的地址,这样我们不同网段之间的电脑就能 ping 通了。
而路由器能实现不同网段之间的相连,主要依赖路由器中的路由表,它记录去往不同地址的接口。
# 查看 ip 路由表
display ip routing-table
# 查看目标 ip
display ip routing-table 100.100.100.100
案例:配置静态路由
当我们配置好 IP 地址后,发现无法从 PC1 连通到 Server 1。
因为,我们发现 AR1 的路由表上没有去往 192.168.3.10
的接口位置。
为了让数据能够成功转发,所以我们手动添加路由的接口位置。
# 通过 192.168.2.10 去往 192.168.3.0 这个网段的路由
ip route-static 192.168.3.0 255.255.255.0 192.168.2.10
# 通过 192.168.2.1 去往 192.168.1.0 这个网段的路由
ip route-static 192.168.1.0 255.255.255.0 192.168.2.1
网安技术
VLAN 虚拟局域网
VLAN(Virtual Local Area Network) 就是虚拟局域网,它将一个物理的局域网在逻辑上划分成多个广播域。它的目的是为了提高安全性、控制流量和简化网络架构,。
我们让这两台电脑放入不同的 VLAN 中,实现隔离,就需要配置交换机。
步骤就是创建 VLAN,然后再将这两台电脑放入不同的 VLAN 之中。
# 创建 VLAN 10
VLAN 10
# 创建 VALN 20
VLAN 20
# 查看交换机上的 VLAN
display vlan
所有机器开机时,都默认存在于 VLAN1 中,VLAN10 和 VLAN20 都是我们后来创建的。
接下来,我们就要将对应的接口放入 VLAN 中就好了。
交换机的接口模式:
1、Access模式:只能属于一个 VLAN,当交换机收到来自某个端口的数据帧时,他会自动地添加一个 VLAN 标签,然后转发。
2、Trunk模式:允许多个 VLAN 通过,用于交换机与交换机之间连接。当交换机收到某个端口的数据帧时,不会添加 VLAN标签,而是检查数据帧是否包含 VLAN,没有就要手动配置。
3、Hybrid模式:允许多个 VLAN 通过,既可用于交换机连接和用户计算机之间的连接。允许多个 VLAN 的报文不打标签,只允许省却 VLAN 报文不打标签。
# 将 0/0/1 接口放入 VLAN10
port link-type access
port default vlan 10
# 将 0/0/2 接口放入 VLAN20
port link-type access
port default vlan 20
接下来,我们再看一下 Trunk 模式下的案例。
我们给第一个交换机的 0/0/3 接口配置 Trunk 模式。
port link-type trunk
port trunk allow-pass vlan all
然后再给第二个交换机的 0/0/1 接口配置 Trunk 模式。
最后,再给其他端口配置虚拟局域网就可以了。
三层交换技术
接下来,我们需要了解的技术是三层交换技术,它能让 VLAN 之间相互通信。
它的原理是,在二层交换机上配置网关,让机器通过网关转发信息到另外一个机器上。
首先就是在 LSW1 交换机中,配置 VLAN10 和 VLAN 20,并且更改接口的 VLAN。
当然,每个 VLAN 要配置好网关,VLAN10 配置网关为 1.1.1.254
而 VLAN 20 配置网关为 2.2.2.254
。
# 配置 VLAN10 网关
interface Vlanif 10
ip address 1.1.1.254 255.255.255.0
# 配置 VLAN20 网关
interface Vlanif 20
ip address 2.2.2.254 255.255.255.0
单臂路由技术
除了,三层交换技术以外,单臂路由技术也能实现 VLAN 之间的相互通信。
单臂路由就是用一台路由器实现两个 VLAN 之间的通信。其原理就是将路由器的一个接口分为多个子接口作为 VLAN 的网关。
# 将路由器物理接口变成子接口
int g 0/0/0.10
# 让 VLAN 跟子接口相关联
dot1q termination vid 10
# 并允许 ARP 的广播
arp broadcast enable
# 配置网关地址
ip address 1.1.1.254
# 查看当前接口下的命令
dis this
ACL 访问控制列表
访问控制列表(Access Control List,ACL)是网络安全机制,用于定义和实施对网络资源或系统对象的访问权限。ACL 可以精确控制哪些主题能够对待客体执行何种操作。
我们做一个小例子,就是有三个 VLAN ,分别是 VLAN10、VLAN20 和 VLAN 30。我们通过 ACL 让 VLAN20 能访问 VLAN 30,而 VLAN 10 不能访问 VLAN 30。
步骤一:创建访问控制规则;
步骤二:调用这个规则。
# 创建规则并使用高级 ACL
acl name test advance
# 基于IP地址拒绝访问
# 注意:ACL 的掩码要反着写
rule deny ip source 192.168.10.0 0.0.0.255 destination 192.168.30.0 0.0.0.255
# 允许其他数据包的发送
rule permit ip source any destination any
# 在数据包必经过的接口调用规则
int g 0/0/1
traffic-filter inbound acl name test
# 查看规则
display acl all
进阶技术
NAT 转换
如何连接互联网?
- 1、写省却路由。
- 2、NAT 网络地址转换。
省却路由:被称为默认路由,是路由表中一种特殊的静态路由。它的网络地址和掩码都是 0,可以匹配任意目标网络前缀。
NAT 网络地址转换:它是一种 IP 数据报文头中的 IP 地址转换为另一个 IP 地址的过程,用于实现内部网络(私有IP)访问外部网络(公有IP)的功能。
我们常见的私网地址有:192.168.x.x
、10.x.x.x
、172.16.x.x ~ 172.31.x.x
。
我们的做个小例子,就是让私网的电脑通过 NAT 地址转换能访问公网的路由器。
# 查看路由表
display ip routing-table
# 选择数据包做地址转换
acl name neiwang basic
rule permit source 192.168.1.0 0.0.0.255
# 查看 ACL 编号
dis acl all
# 建立 NAT 地址
# 用 64.1.1.2 ~ 64.1.1.6 公网 IP 进行访问
nat address-group 1 64.1.1.2 64.1.1.6
# 在出口调用 NAT 规则
int g 0/0/1
nat outbound 2999 address-group 1
上述的例子,是 NAT 动态分配地址。接下来,我们看一下静态 NAT 分配地址。
如果有一台电脑想从外网访问内网中的一台服务器,就需要给这台服务器配置静态的地址。
# 配置路由
# AR1
ip route-static 200.200.200.0 255.255.255.0 119.1.1.2
# AR2
ip route-static 172.16.0.0 255.255.255.0 119.1.1.1
# 配置静态 NAT
int g 0/0/1
nat server global 119.1.1.123 inside 172.16.0.1
Telnet 协议
如何远程管理远程设备?
- 通过 Telnet 远程管理设备。
Telnel 是一种应用层协议,用于互联网和局域网汇中,使用虚拟终端的形式提供双向、以文本字符串为主的命令行界面交互。
其中,Cloud1 为我们的本地主机,而 AR1 为远程路由器。
我们需要配置一下 Cloud1 的信息和我们的网卡地址。
可以看到我们为选择了 VMnet8 作为主机的网卡,接下来我们给 VMnet8 配置一个地址为 100.1.1.1
,掩码为 255.0.0.0
。
然后,给路由器接口配置地址为 100.100.100.100
,掩码为 255.0.0.0
。
这样,我们的主机就已经可以 ping 通路由器了。
接着,我们要在路由器中启动 telnet 服务。
# 开启 5 个虚拟连接 意味着有 5 个用户可以同时连接
user-interface vty 0 4
# 添加验证模式
# aaa: 用户名 + 密码 password: 密码
authentication-mode aaa
# 设置用户名和密码
aaa
local-user testuser password cipher 123456
# 给用户设置权限
local-user testuser privilege level 15
# 给用户设置用途
local-user testuser service-type telnet
# 允许启动 telnet
telnet server enable
综合实践
项目简述
1、网络中有三个不同部分,可以自动获取地址。
2、各个部分可以相互访问,也可以访问服务器。
3、PC1 不能访问互联网,PC2 和 PC3 可以。
4、内网服务器对外地址是 www.yikuanzz.com
,所有电脑可以访问。
项目实践
1、对于 PC2 和 PC3 分别为它们创建 VLAN 10 和 VLAN 20,并将接口放入对应的 VLAN 中,然后也要将另外一个接口设置为 trunk 模式。
2、在三层交换机上,配置 VLAN 的网关,让 VLAN 之间能够相互进行访问,同时我们打开 DHCP 功能。
3、我们给内网的 DNS 服务器配置好地址和网关,并加入网址的域名解析。
4、给三层交换机与路由器的接口配置地址,让它们可以进行通信,但注意要新建一个 VLAN ,将地址配置到这个 VLAN 上去。
5、给三层交换机配置到外网的静态路由,当然也要给路由器写下一跳的静态路由。
6、在路由器上配置 NAT 地址转换,这样内网主机就能 ping 通外网了。
7、这里最后配置一些 ACL 规则,拒绝 PC1 所在的 VLAN1 请求就可以了。