我是靠谱客的博主 无私小猫咪,最近开发中收集的这篇文章主要介绍linux配置端口地址转换,linux 网络地址转换NAT,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

网络地址转换NAT

8d07a6081ead34322b185c2f9fe7fc90.png

NAT的作用:

增加IPv4的地址数量,解决私网地址不能上网的问题。

NAT的概念:

通过将内部网络的私网IP地址翻译成全球唯一的公网IP地址。

原理

原理:

41e313211a1514df56a5a327afc717f7.png

就是将内部本地转换为内部全局的地址,即将私网地址转换为公网地址去上网。

NAT术语:

内部本地(局部) 在内部网络中分配给主机使用的私有ip地址

内部全局 该地址通常是从全球统一可寻址的地址空间中分配的,一般由互联网服务同上(ISP)提供

外部全局 外部网络上的主机分配的ip地址。该地址也是从全球统一可寻址的地址空间中分配的

外部本地(局部) 外部主机表现在内部网络的ip地址

简单转换条目 将一个ip地址映射到另一个ip地址的转换条目

扩展转换条目 映射ip地址和端口到另一对ip地址和端口的条目

NAT的优点:

1、节省公网地址

2、增强灵活性、安全性

3、处理重叠的地址

缺点:

1、延迟增大

2、配置和维护的复杂性

3、不支持某些应用

NAT的实现方式:(分类)

1、静态转换(Static translation)静态NAT

2、动态转换(Dynamic translation)动态NAT

3、端口地址转换(Port Address Translation,PAT)

一、静态转换

将内部网络的私有ip地址转换为公用合法的ip地址,ip地址的对应关系是一对一的,而且是不变的。

主要用在内部网络中有对外提供服务的服务器

缺点:需要独占宝贵的合法ip地址。

如果某个合法ip地址已经被NAT静态地址转换定义,即该合法ip地址当前没有被使用,也不能被用作其它的地址转换。

4f59cd78ae4ce08ff126e95467640f88.png

二、动态NAT

将内部网络的私有地址转换为公网地址进行一对一的转换。但是,是从公网地址池中选择一个未使用的地址对内部私有地址进行转换。

优点:随机的

缺点:不节约、不固定的。

01d875065d0730aa737afa57b4a29fb7.png

三、端口地址转换

也被称为复用地址转换(PAT)

也是一种动态的地址转换。

工作过程:路由器改变外出数据包的源ip地址和源端口,并进行端口转换,即采用端口多路复用方式,通过这种转换,可以使多个内部私有ip地址同时与同一个公网ip地址进行转换并对外部网络进行访问。

一个公网地址对应多个私网地址。

优点:

1、节约公网ip地址

2、隐藏内部的所有主机,避免******。

理想状况下,一个单一的IP地址可以使用的端口数为4000个。

四、NAT配置

1、静态NAT配置步骤:

(1)先设置外部端口的ip地址

(2)再设置内部端口的ip地址

(3)在全局配置模式下:

ip nat inside source static 内部本地ip地址 内部全局ip地址 [extended]

注:extended(可选)表示允许同一个内部局部地址映射到多个内部全局地址。

例子:ip nat inside source static 192.168.100.2 61.159.62.130

将内部局部地址192.168.100.2转换为内部全局地址61.159.62.130

ip nat inside source static 192.168.10.10 202.10.168.130

(4)在内部和外部端口上启用NAT

将端口设置为内部端口或者外部端口

int f0/0

ip nat outside ##将当前端口设置为外部端口

exit

int f1/1

ip nat inside ##将当前端口设置为内部端口

exit

(4)配置路由。

2、NAT端口映射

(1)先给所有的端口设置ip地址

(2)在全局配置模式下配置端口映射,配置命令如下:

ip nat inside source static tcp/udp 私网地址 端口号 公网地址 端口

意义:将TCP或UDP协议中私网地址需要转换的端口转换成公网地址的端口号。

例子:ip nat inside source static tcp 192.168.10.10 80 192.168.20.20 8080

将Web服务器192.168.10.10的80端口转换成192.168.20.20的8080端口。

注:NAT端口映射还可以将不同服务器的不同服务(端口)映射到同一公网地址的不同端口,给人的感觉就是通过同一个地址访问了所有的服务器。

3、动态NAT

(1)先设置路由的所有端口的ip地址

(2)在全局配置模式下,定义内部网络中允许访问外部网络的ACL

(3)在全局配置模式下,定义合法ip地址池

配置命令如下:

ip nat pool 地址池名称 起始地址 终止地址 netmask 子网掩码 type rotary

(4)实现网地址转换,配置命令如下:

ip nat inside source list ACL列表号 pool 地址池名称 overload(反复用)

意义:将ACL列表中的地址转换为地址池名称中定义的地址

例子:

ip nat inside source list 1 pool test0

将ACL1中的局部地址转换为test0地址池定义的全局地址

注:如果有多个地址池的话,也可以一一添加,以增加合法地址池的数量范围。

ip nat inside source list 1 pool test1

ip nat inside source list 1 pool test2

以此类推。

(5)在内部和外部端口上启用NAT

(6)配置路由

4、PAT

(1)使用外部全局地址

①先配置所有端口的ip地址

②配置内部访问列表

③定义合法的ip地址池,命令如下:

ip nat pool 地址池名称 起始地址 终止地址 network 子网掩码

④设置复用动态ip地址转换:

ip nat inside source list ACL列表号 pool 地址池名称 [overload]

⑤在内部和外部端口上启用NAT

⑥配置路由

(2)复用路由器外部接口地址

①先配置所有端口

②定义内部访问列表

③设置复用动态ip地址转换,命令如下:

ip nat inside source list ACL1 interface 端口编号 overload

意义:以端口复用方式,将ACL1中的私有地址转化为路由器外部接口的合法ip地址。

④在外部和内部端口上启用NAT

⑤配置默认路由。

show ip nat translations [verbose] 查看NAT转换条目,verbose显示更多信息,包括一个动态条目的保存时间

show ip nat statistics 查看NAT的统计信息

debug ip nat 跟踪NAT的操作,显示出每个转换的数据包。

最后

以上就是无私小猫咪为你收集整理的linux配置端口地址转换,linux 网络地址转换NAT的全部内容,希望文章能够帮你解决linux配置端口地址转换,linux 网络地址转换NAT所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部