目录
NAT
没有它任何一家企业都上不了网!地位很高
1、Network Address Translations网络地址转换
2、IPv4地址严重不够用了
x.x.x.x x:0-255
A B C三类可以使用 D组播 E科研
学NAT的目的就是解决地址不够用的问题
3、IP地址分为公网IP和私网IP(公有IP和私有IP)
公网IP只能在公网上使用
私网IP只能在内网中使用
公网上不允许出现私有IP地址!!!!!!(公网就是联通、电信、移动...)
私网IP可以重复在内网使用
192.168.1.1就是一个私有IP地址
私有IP地址范围:
从ABC三类中抽出一小部分作为私有IP地址
1)10.0.0.0/8 (10开头的,只检查前八位,也就是第一位十进制只要是10就是私有地址,不管子网掩码是多少)
2)172.16.0.0/16 — 172.31.0.0/16(172.16开头的一直到172.31开头的)
3)192.168.0.0/16 (192.168开头的)
在公网路由器上的路由表中不会出现私有IP,否则会被干掉只要不是这三个范围都是公网IP(前提是要在ABC三类之内)
每一个公网IP都很值钱的!(可能办宽带的钱大部分都是租用公网IP地址的钱,少部分是带宽的钱)
4.NAT主要实现公私有IP地址的转换,一般是路由器或者防火墙上来完成,不建议在三层交换机上配置!
希望内网的私有IP地址可以通过公网IP地址去上网
5. NAT有3大类:
1)静态NAT:1对1映射,(静态PAT,端口映射技术)
2)动态NAT(被淘汰了)
NAT地址转换表并不存在,就是说这个地址转换表是动态生成的,而不是工程师写上去的
3)PAT(端口地址转换,Port Address Translations)最好用!
PAT也称为端口复用技术(overload复用)动态PAT
端口号范围:0-65535
6.NAT命令:
1)定义内网端口:
int f0/0
ip nat inside
exit
2)定义外网端口:
int f0/1
ip nat outside
exit
3)配置PAT:(用于多个员工,用一个公网IP上网,多对一)内到外上网用的
定义内部地址池:(定义哪些人我允许做地址转换,一般是定义了公司的所有人)
acc 1 permit 192.168.0.0 0.0.255.255(acl在这做的是容器的作用,不是做流量过滤)
做PAT动态映射:
conf t
ip nat inside source list 1 int f0/1 overload(对IP地址做一个nat,凡是从内网来的,我要对你的源IP做转换,只要源IP满足list1表,我就允许你用公网接口f0/1做地址转换,并复用)
acl表只有应用在接口上才是做过滤作用,用在其他知识点(NAT命令里面),不是做流量过滤,只是做匹配
4)配置静态端口转换:(每条命令都是用来映射一台服务器)外到内
conf t
ip nat inside source static tcp 192.168.1.3 80 100.1.1.2 80(映射到这台服务器的某个端口)(我要把192.168.1.3这台服务器的80端口映射到100.1.1.2上的80上去)
当外网访问100.1.1.2的80,就是访问内网192.168.1.3地址的80
NAT实验演示:
公网上的路由器是不能配去私有IP地址的路由的
1、给路由器和PC配IP(步骤省略)
2、给公司路由器定义内外网接口
R1(config)#int f0/0
R1(config-if)#ip nat inside
R1(config-if)#exit
R1(config)#int f0/1
R1(config-if)#ip nat outside
R1(config-if)#exit
3、给公司路由器配PAT
R1(config)#access-list 1 permit any
R1(config)#ip nat inside source list 1 int f0/1 overload
4、验证公司所有人能同时上网:
sh ip nat translations(查看nat地址转换表)
clear ip nat translation * (清空nat地址转换表,这条命令不要随便敲)
5、打开服务器
现在外网的网民(200.1.1.1)希望访问我们公司的web服务器
现在假设我们公司还买了100.1.1.3这个公网IP,现在希望把这台服务器地址映射到100.1.1.3上去
注意f0/1这个接口不需要配,这个接口是100.1.1.1就行了
R1(config)#ip nat inside source static tcp 192.168.1.222 80 100.1.1.3 80
我们要发布192.168.1.222地址的80,映射到公司买的100.1.1.3这个公网IP的80
打开网民电脑浏览器:
只要输入公司购买的100.1.1.3既可以访问公司内网的web服务器(明明访问的是公网的地址但是看到私网的服务器---成功映射)
帧从内网网外网走,先做路由,再做NAT地址转换(在外网端口做)
帧从外网进入内网,路由器先解封装,先做地址转换,再做路由地址转换永远是在外网端口上做的
总结:内网的员工(多对一)上网,是用公司路由器的外网接口的IP去上网(配PAT)
外网想主动进来的时候只能使用静态转换(静态端口映射,访问的是服务器)
PAT是通过什么来区分内网不同的人?通过端口号,端口号是路由器生成的
动态路由概述
动态路由协议
可以简单地理解为协议就是“大脑”,也是一种语言
19.2Kb/s是带宽
度量值是选择路径的一种标准
当所有的路由器都学习到了所有的路由条目叫做收敛完成,越快越好
动态路由协议分类
这两个协议最大的区别就是他们度量值不一样
距离矢量路由协议只认距离和方向,不考虑综合因素(以跳数作为度量值)RIP、IGRP等
链路状态路由协议OSPF、IS-IS等
RIP路由协议工作原理
这个路由器一旦启用rip路由协议,装上这个“大脑”,会每隔一段时间跟他旁边的路由器聊天(默认时间30s更新一次)
30s通过广播向所有路由器进行更新我的路由表,让你们知道我都认识哪些路由,你们要不要学
路由表的形成
Metric是度量值的意思,如果是RIP路由协议,度量值就是跳数,写0就代表0跳
R表示RIP协议
RIP的度量值与更新时间
路由环路
水平分割
RIP路由器一开启就开启了水平分割,不需要额外配
RIP的配置和验证
启动RIP进程
Router(config)# router rip
宣告主网络号
Router(config-router)# network network-number
查看路由表
Router# show ip route
查看路由协议的配置
Router# show ip protocols
小实验:
要求全网互通
1、配IP(省略)
2、配置路由器
R1(config)#router rip 启用RIP协议
R1(config-router)#version 2 版本1或2都行
R1(config-router)#network 10.0.0.0 把f0/0端口激活
R1(config-router)#network 20.0.0.0 把f0/1端口激活 不是写你真正的网段,只要写开头就行
R2(config)#router rip
R2(config-router)#version 2
R2(config-router)#network 20.0.0.0 激活f0/1接口
R2(config-router)#network 30.0.0.0 激活f0/0接口
R3(config)#router rip
R3(config-router)#version 2
R3(config-router)#network 30.0.0.0
R3(config-router)#network 40.0.0.0
R3(config-router)#exit
只需要激活接口就行,不用管下一跳
3、查看R1路由表:do sh ip route
路由器在更新路由表的时候不带子网掩码
[120/1] 是 [管理距离值/跳数]
via 是下一跳
4、ping一下
总结:
RIP v1:
Router rip
version 1
network 10.0.0.0
network 20.0.0.0
exit
RIP v2:
Router rip
version 2
no auto-summary
network 10.0.0.0
network 20.0.0.0
exit