七、网络层

路由器

路由器工作在网络层

1、路由:跨越从源主机到目标主机的一个互联网络来转发数据包的过程(选择路径的过程)

也可以称:路由--路由器为IP包选择路径的过程

路由器:能够将数据包转发到正确的目的地,并在转发过程中选择最佳路径的设备

2、路由表

  • 路由器中维护的路由条目的集合

  • 路由器根据路由表做路径选择

  • 路由表中格式: C(直连路由) / S(默认路由) 目标网段 下一跳IP地址

  • 路由表中 0.0.0.0/0(所有IP地址)

3、路由分类:

  1. 静态

  2. 默认

  3. 浮动

  4. 动态

3、命令:

1、 静态路由:
    conf t
        ip route 目标网段   子网掩码    下一跳IP地址
    如:ip route 70.1.1.0  255.255.255.0  20.1.1.2
    
2、默认路由:
    conf t
        in route 0.0.0.0    0.0.0.0 下一跳IP地址
        
3、浮动路由:
    在静态或默认路由后面加空格+数字 (数字为正整数)

4、路由与交换机的对比:

  • 路由器工作在网络层

    根据路由表转发数据

    路由选择、路由转发

  • 交换机工作在数据链路层

    根据MAC地址表转发数据

    硬件转发

 

路由器工作原理

  1. 一个帧到达路由后,路由器首先检查帧中的目标MAC地址,是否与自己的MAC地址一致;如果不是:丢弃,如果是:解封装,并且送到路由器内部;

  2. 路由器检查IP包头中的目标IP地址,并匹配路由表;如果匹配不成功:丢弃,并向源IP地址反馈信息,如果匹配成功:将IP包路由到出接口

  3. 封住帧,将出接口的MAC地址作为源MAC地址封装,然后检查ARP缓存表中是否有下一跳的MAC地址;如果有:直接提取,并作为目标MAC地址封装;如果没有:则发送ARP广播请求下一跳的MAC地址,并获取到下一跳的MAC地址,先记录到ARP缓存,再将获取到的MAC地址作为目标MAC地址进行封装,最后将帧发出去

 

动态路由

1、基于某种路由协议实现

2、特点:

  • 减少管理任务

  • 占用了网络带宽

3、动态路由协议的概述:路由器之间用来交换信息的语言

4、度量值:

跳数、带宽、负载、时延、可靠性、成本

5、收敛:使所有路由表都达到一致状态的过程

6、按照路由执行的算法分类

  1. 距离矢量路由协议

    • 依据从源网络到目标网络所经过的路由器的个数选择路由

    • RIP、IGRP

  2. 链路状态路由协议

    • 综合考虑从源网络到目标网络的各条路径的情况选择路由

    • OSPF、IS-IS

RIP

1、RIP是距离-适量路由选择协议

2、RIP的基本概念:

  • 定期更新(默认更新时间为30秒)

  • 邻居

  • 广播更新

  • 全路由表更新

3、RIP度量值为跳数:最大跳数为15跳,16跳为不可达

4、RIP更新时间:每隔30秒发送路由更新消息,UDP520端口

5、RIP路由更新消息:发送整个路由表信息

 

IP地址

1、简单局域网的构成

局域网:一般称为内网

简单的局域网的构成:交换机、网线、PC端

交换机:用来组建内网的设备

2、IP地址

IP地址就是唯一标识,一段网络编码(二进制),由32位组成

IP地址形式:X.X.X.X 范围:0--255

3、子网掩码

  • 局域网通信规则:在同一个局域网中,所有的IP地址必须在同一网段才可以互相通信

  • IP地址构成:网络位+主机位(网络位相同的IP地址,为同一网段)

  • 子网掩码:用来确定IP地址的网络位

  • 子网掩码如何确认网络位:与255对于的数字为网络位,与0对于的数字就是主机位

如:255.0.0.0             255.255.0.0    255.255.255.0
10.1.1.1     255.0.0.0  网段为10.0.0.0   主机位.1.1.1

注意:1个IP地址,必须配套一个子网掩码

4、IP地址详解

国际标准组织ISO定义地址分为五大类,(以IP地址的第一位进行区分)

  • A类:1--126 默认子网掩码:255.0.0.0

  • B类:128--191 默认子网掩码:255.255.0.0

  • C类:192--223 默认子网掩码:255.255.255.0

  • D类:224--239 组播

  • E类:240--254 科研使用

127.0.0.1 回环地址

主机位的0 和 255 不能使用(0 表示该IP地址所在的网段,255表示该网段的广播地址)

总结:当主机位全部置0 代表网段,主机位置255 代表 该网段的广播地址

5、网关

网关:一个网络的出口, Gateway=GW,一般网关是在路由器上

路由器:可用连接内外网的设备

PC向外发包:

  1. 首先判断目标IP地址与自己是否在同一网段

  2. 如在同一网段,则直接发出去,而不找网关

  3. 如不在同一网段,则直接发包给网关

6、DNS

DNS:Domain Name Service 域名服务

注意:一台PC需要连接外网,需要IP地址、子网掩码、网关、DNS四大参数

7、网络测试命令

1、查看IP地址:
    ipconfig    #查看IP地址基本信息
    ipconfig  /all  #查看IP地址详细信息
    
2、测试网络连通性:
    ping 目标地址   #测试网络连通性,有去有回即为可以成功通信
    ping -t 目标地址    #一直ping
    ping -l 数字 IP地址 #修改ping包的大小
    ping -n 数字 目标IP地址   #修改ping包的数量
    如果ping不通,可能对方不在线,或者对方开着防火墙
    
3、手工解析域名
    nslookup 域名     #手工解析域名的IP地址
    如:nslookup www.jd.com

 

ARP协议

1、广播与广播域:

  • 广播:将广播地址作为目的地址的数据帧

  • 广播域:网络中能接收到同一个广播所有节点的集合

2、MAC地址广播:

  • 广播地址为FF-FF-FF-FF-FF-FF

3、IP地址广播:

  1. 255.255.255.255

  2. 广播IP地址为IP地址网段的广播地址,如:192.168.1.255/24

4、ARP协议:

  • Address Resolution Protocol --- 地址解析协议

  • 将一个已知的IP地址解析成MAC地址

路由器可隔离广播域

交换机无法隔离广播域

路由器不转发ARP报文

5、Windows中ARP命令:

  • arp -a #查看arp缓存表

  • arp -d #清除arp缓存表

  • arp - s #ARP绑定

6、ARP协议原理:

  1. 发送ARP广播请求

    ARP报文内容: 我 是 10.0.0.1 我的 mac:AA

    谁是10.0.0.3 你的mac : ?

  2. 接受ARP单播应答

    ARP报文内容: 我 是 10.0.0.1 我的 mac:AA

    谁是10.0.0.3 你的mac : BB

7、ARP攻击或欺骗的原理:

  • 通过发送伪造虚假的ARP报文(广播或单播),来实现的攻击或欺骗

  • 如果虚假ARP报文的MAC地址是伪造的、不存在的,实现ARP攻击,效果为中断通信/断网

  • 如果虚假ARP报文的MAC地址是攻击者自己的MAC地址,则实现ARP欺骗,效果为可以监听、窃取、篡改、控制流程,但不能中断通信

8、ARP协议是没有验证机制的,所有容易被ARP投毒

9、ARP攻击者通过发送虚假伪造的ARP报文来对受害者进行ARP缓存投毒

10、ARP防御

  1. 静态ARP绑定: 手工绑定/双向绑定

    优点:配置简单

    缺点:工作量大,维护量大

  2. ARP防火墙

    自动绑定静态ARP

    主动防御

    优点:简单易用

    缺点:当开启人数较多时,会增大网络负担

  3. 硬件级ARP防御

    交换机支持“端口”做动态ARP绑定(配合DHCP服务器)或做静态ARP绑定

VLAN

Virtual LAN -- 虚拟局域网

VLAN是二层技术

1、广播/广播域:

  • 广播:将广播地址作为目的地址的数据帧

  • 广播域:网络中能够接收到同一广播的所有节点的集合

2、广播的危害:增加网络负担、终端负担、传播病毒、安全性低

3、如何控制广播:控制广播 = 隔离广播域

路由器隔离广播(物理隔离广播)

路由器隔离广播缺点:成本高、不灵活

4、采用新的技术VLAN控制广播

VLAN是在交换机上的实现的,且是通过逻辑隔离划分的广播域

5、VLAN是干什么的 ? --- 控制广播,逻辑隔离广播域

6、一个VLAN = 一个广播域 = 一个网段

7、VALN的类型

  1. 静态VLAN -- 手工配置、基于端口划分的VLAN

  2. 动态VLAN -- 手工配置、基于MAC地址划分的VLAN/采用802.1x端口认证基于账号来划分VLAN

8、静态VLAN命令:

  • 创建VLAN

    conf t

    vlan ID,ID/ID-ID

    [name 自定义名称]

    exit

  • 查看VLAN表 --- show vlan brief

  • 将端口加入到VLAN:

    int f0/x

    switchport access vlan ID

    exit

注意:

  • 在同一交换机上,入口vlan和出口vlan不在同一vlan是无法通信的

trunk

1、trunk/中继链路/公共链路

  • 作用:允许所有VLAN数据通过trunk链路

  • 方法:通过在数据帧上加标签,来区分不同的vlan数据

2、trunk标签

  • ISL标签:Cisco私有的,标签大小30字节(26+4)

  • 802.1q标签:公有协议,所有厂家都支持,标签大小4字节,属于内部标签

3、交换机端口链路类型

  1. 接入端口:也称为access端口,一般用于连接PC,只能属于某1个VLAN,也只能传输1个VLAN的数据

  2. 中继端口也称为trunk端口,一般用于连接其他交换机,属于公共端口,允许所有VLAN的数据通过!

4、配置trunk命令:

int f0/x
    [switchport trunk encapsulation dotlq/isl](可选)
    switchport mode access/trunk
    exit

 

单臂路由

  • VLAN控制广播域

  • 不同VLAN间无法通信!

  • 一个VLAN = 一个网段

不同间的VLAN靠路由实现

命令:

conf t
int f0/0.1
encapsulation dot1q VLAN端口
ip add x.x.x.x 255.255.255.0
no shutdown
exit
​
in f0/0
no shutdown

 

ICMP

只有应用层协议才有端口号

Internet Control Message Protocol -- Internet控制报文协议

ICMP--网络探测与回馈机制

1、可以干什么?

  1. 网络探测

  2. 路由跟踪

  3. 错误反馈

2、ICMP协议的封装格式

ICMP头 + 数据

ICMP头:ICMP类型、代码(当ICMP类型为3时,代码显示目标主机不可达原因)

ICMP类型字段:

  • 8 -- ping请求

  • 0 -- ping应答

  • 3 -- 目标主机不可达

  • 11 -- TTL超时

3、命令:

  • Windows:tracert IP地址

  • Linux或路由:traceroute IP地址

 

HSRP

Hot Standby Router Protocol --热备份路由协议(思科私有协议)

作用:实时切换网关

备份的时网关

1、HSRP组:1-255,没有大小之分

2、虚拟路由器的IP称为虚拟IP地址

3、HSRP组的成员:

  • 虚拟路由器(老大)

  • 活跃路由器

  • 备份路由器

  • 其他路由器

4、HSRP优先级: 1--255(由高到低)

默认为100

虚拟路由器没有优先级

5、HSRP组成员通过定时发送hello包来交流,默认每隔三秒

hello时间3秒,坚持时间十秒

6、占先权 preempt (给备份路由器或者其他路由器配置)

作用:检测不到对方,或检测到对方优先级比自己低,立即抢占活跃路由器

7、配置跟踪track,跟踪外网端口状态,一但外网down掉,则自降优先级

8、命令:

  • 加入热备份:int f0/x

    standby 组号 IP 网关

    standby 组号 priority 优先级

    standby 组号 preemp #占先权

    standby 组号 track f0/x #开启跟踪

  • 查看HSRP状态: show standby br (简要信息) 或者show standby

 

三层交换机

目的:实现不同vlan间的通信

1、三层交换机 = 纯的二层交换机 + 纯的三层路由器

2、三层路由引擎是可以关闭或开启的

ip routing # 开启三层路由功能

no ip routing #关闭三层路由功能

3、三层交换机的优点:

  • 解决网络瓶颈问题

  • 解决了单点故障(虚拟接口不在依赖任何的物理接口)

  • 一次路由、永久转发(CEEF表<快速转发表>,邻接关系表)

4、在三层交换机上起虚拟接口(配置VLAN的网关)

  • int vlan 10

    ip add 10.1.1.254 255.255.255.0

    no shutdown

    exit

5、二层端口升级为三层端口

  • int f0/x

    no switchport

    ip addxxxxx

    no shutdown

ACL

Access Control List -- 访问控制表

1、ACL是一种包过滤技术

2、ACL基于IP包头的IP地址、四层TCP/UDP头部的端口号 、[ 五层数据 ]

3、ACL在路由器上配置,也可以在防火墙上配置(一般称为策略)

4、ACL主要分为2大类:

  • 标准ACL

  • 扩展ACL

 

5、标准ACL

  • 表号:1-99

  • 特点:只能基于源IP对包进行过滤

  • 命令:

    conf t
    access-list 表号  permit/deny   源IP或源网段  反子网掩码
    注释:反子网掩码:将正子网掩码0和1倒置
    子网掩码:255.0.0.0   反子网掩码:0.255.255.255
    反子网掩码作用:用来匹配条件,与0对应的需要严格匹配,与1对应的忽略!
    查看ACL表
    show ip access-list   [表号]
    ​
    将ACL应用到接口:
        int f0/x
            ip access-group  表号  in/out
            exit
    ​

     

 

6、扩展ACL

  • 表号:100-199

  • 特点:可以基于源IP、目标IP、端口号、协议等对包进行过滤

  • 命令:

    access-list  表号  permit/deny  协议  源IP或源网段  反子网掩码  目标IP或目标网段  反子网掩码 [ eq   端口号 ]  
    注释:
        协议:tcp/udp/icmp/ip 

7、ACL原理

  1. ACL表必须应用到接口的进或出方向才生效

  2. 一个接口的一个方向只能应用一张表

  3. 进还是出方向应用? 取决于流量控制总方向

  4. ACL表是严格自上而下检查每一条,注意书写顺序

  5. 每一条是由条件和动作组成,当某流量没有满足某条件,继续检查下一条

8、命名ACL:

作用:可以对标准或扩展ACL进行自定义命名

优点:自定义命名更容易辨认,也i便于记忆;可以任意修改某一条,或删除某一条,也可以往中间插入某一条

命令:

conf t
    ip access-list  standard/extended  自定义表名
        开始从deny或permit编写ACL条目
        exit
        
删除某一条:
    ip access-list  standard/extended  表名
    no 条目ID
    exit
    
插入某一条:
ip access-list  standard/extended  表名
    条目  动作  条件
    exit
        

 

注意:

  • 标准ACL尽量写在靠近目标的地方

  • 做流量控制,首先要先判断ACL写的位置(哪个路由器?哪个接口的哪个方向 ?)

  • 在考虑如何写ACL

  • 如何写?

    1. 首先要判断最终要允许所有还是拒绝所有

    2. 然后写的时候注意:将严格的控制写在前面

  • 一般情况下,标准或扩展ACL一旦编写好,无法修改某一条,也无法删除某一条,也无法修改顺序,也无法在中间插入新的条目,只能一直在最后添加新的条目

  • 如果想修改或插入或删除,只能删除整张表,重新写!

    命令:no access-list 表号

deny 拒绝、permit 允许

 

NAT

Network Address Translation --- 网络地址转换

目的:解决IPV4地址不够用

1、IP地址分为:公网IP和私网IP

  • 公网IP只能在公网上使用

  • 私网IP只能在内网中使用

公网上不允许出现私有IP地址

私网IP可以重复在内网使用

2、私有IP地址范围:

  • 10.0.0.0/8

  • 172.16.0.0/16 ---- 172.31.0.0/16

  • 192.168.0.0/16

3、NAT主要实现公私有IP地址的转换,一般是在路由器或防火墙上配置

4、NAT分三大类:

  • 静态NAT:一对一映射,(静态PAT,端口映射技术)

  • 动态NAT

  • PAT(端口地址转换,Port Address Translations)

    PAT也称为端口复用技术

5、NAT命令:

1、定义内外网端口:
	int f0/0
	ip nat inside/outside
	exit

2、配置PAT:
	定义内部地址池:
    	acc 1 permit 192.168.0.0   0.0.255.255
    做PAT动态映射:
    	ip nat inside source list 1 int f0/x overload
   
3、配置静态端口转换:
	ip nat inside sourse static tcp 192.168.1.1 80 100.1.1.2 80

 

注意:

  1. 定义内外网端口:

    1. 内网到外网:转换源IP

    2. 外网到内网:转换目标IP

  2. 端口号:0-65535

  3. overload:端口复用技术

 

VPN

Virtual Private Network -- VPN(虚拟专有网)

1、VPN目的:在不安全的网络上安全的传输数据

VPN只是一个技术,使用PKI技术,来保证数据的安全三要素

安全三要素:机密性、完整性、可用性

2、加密技术:

  • 对称加密:加密与解密是相同的密钥(也称单密钥密码系统)

    密钥容易泄露!

    对称加密算法:DES、3DES、AES

  • 非对称加密算法:使用公私钥加密数据

    公私钥成对生成,互为加解密关系

    公私钥不能互相推算

    双方交换公钥,使用对方的公钥加密实现机密性

    使用自己的私钥加密,对方用公钥解密实现了身份认证

    常见算法:RSA、DH

  • 完整性算法/:MD5、SHA、(散列算法:哈希算法)

3、VPN的类型

  • 远程访问VPN(Remote Access VPN):一般用在个人到安全连接到企业内部 常见RA-VPN协议:PPTP VPN、 L2TP VPN、SSTP VPN、EZVPN、SSL VPN

  • 点到点VPN:一般用在企业对企业安全连接需要在两个企业总出口设备之间建立VPN通道 常见的点到点VPN框架:IPsecVPN

4、IPsecVPN

  1. 属于点到点VPN,可以在2家企业之间建立VPN隧道

  2. VNP隧道优点:安全性!、合并两家企业内网!

  3. VPN隧道技术:重新封装技术 + 加密认证技术

    1. 传输模式:只加密上层数据,不加密私有IP包头,相对速度快

    2. 隧道模式(默认):加密整个私有IP包,包括IP包头,更安全,相对速度慢

  4. IPsecVPN分为2大阶段:

    1. 第一阶段:管理连接

      目的:通信双方设备通过非对称加密算法加密对称对称加密算法所使用的对称密钥!

      命令:

      conf t      (isakmp  -- IKE  密钥交换)
      crypto	isakmp	policy 1	(传输集/策略集)
      	encryption	des/3des/aes
      	hash	md5/sha
      	group  1/2/5   (指定非对称加密算法,DH-1/2/5)
      	authentication	pre-share
      	lifetime	秒(默认86400秒)
      	exit
      crypto  isakmp key  预共享密钥	address  对方公网IP地址
      
    2. 第二阶段:数据连接

      目的:通过对称加密算法加密实际所要传输的私网数据!

      命令:

      定义VPN触发流量:
      access-list 100 permit ip 192.168.1.0 0.0.0.255  172.16.0.0 0.0.255.255
      定义加密及认证:
      conf t
      	crypto  ipsec transform-set 传输模式名 esp/ah-des/3des/aes  esp/ah-md5/sha-hmac
      
      注意:
      ESP:支持加密及认证(认证身份验证+完整性)、
      AH:只支持认证(身份验证+完整性)
    3. 创建MAP映射表

      命令:

      conf t
      crypto map map名 1 ipsec-isakmp (1 -- 标识)
      	match	address	access-list表名
      	set	transform-set	传输模式名
      	set	peer	对方的公网IP
      	exit
      
      将map表应用到外网端口:
      int f0/1(外网端口)
      	crypto	map	map名
      	exit
      	
      注意:一个接口只能应用一个map表
  5. 查看命令:

    show	crypto	isakmp sa	查看第一阶段命令
    show	crypto	ipsec	sa		查看第二阶段命令
    
    show	crypto	isakmp	policy	查看第一阶段的策略配置集
    show	crypto	ipsec	transform-set	查看第二阶段的传输模式

     

  6. 路由器工作原理:

    内网--to--外网; 路由--NAT--VPN--出去

 

远程访问VPN

  • 在公司需要搭建服务器

  • VPN服务器需要对VPN客户端进行身份验证

  • VPN服务器需要给VPN服务器下发权限及IP地址

  • Windows2003/2008中的PPTP/L2TP端口号TCP 1723

 

 

 

 

 

 

 

 

你可能感兴趣的:(TCP/IP,网络,路由器,交换机)