NAT---网络地址转换技术

2024-03-25 23:04
文章标签 技术 转换 nat 网络地址

本文主要是介绍NAT---网络地址转换技术,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Network Address Translation

1、起源:ip地址不够用

2、作用:让私网地址映射成公网地址,进而访问网络。

3、私网Ip地址的范围:

A类:10.0.0.0-10.255.255.255

B类:172.16.0.0-172.31.255.255

C类:192.168.0.0-192.168.255.255

4、缺点:破坏了端到端的环境

【数据包传输过程】(两个过程相反)

1、数据包从内网到外网查看路由表,查看目的是否可达,如果可达,再对源ip进行转换,不可达就丢弃。

2、数据包从外网到内网转换成私有的ip地址,然后查看路由表。(公网回来不知道私网的IP地址)隐藏内部网络拓扑

NAT的相关术语

1.内部本地地址(inside local)转换之前的私有IP地址 192.168.10.1

2.内部全局地址(inside global)转换之后的公有IP地址 202.101.1.1

3.外部本地地址(outside local)

4.外部全局地址(outside global)

nat分类】

1、静态nat

对私网的地址做一对一的映射,一个私有地址映射一个公有地址

ip nat inside source static 192.168.1.1 12.12.12.3

//对源ip地址192.168.1.1映射成公网12.12.12.3(与公网物理端口处于同一网段即可)

Router(config)#int e0/0

Router(config-if)#ip nat inside          //制定nat内接口

Router(config)#int e0/1

Router(config-if)#ip nat outside       //制定nat外接口

ip route 0.0.0.0 0.0.0.0 12.12.12.2   //默认路由

带端口的静态NAT

R3(config)#ip nat inside source static tcp 192.168.100.100 23 202.101.23.200 233        //将对202.101.23.200的233端口通过TCP连接的数据包,通过NAT转换给192.168.100.100的23端口

2、动态nat

通过地址池来实现,购买公网的一个ip地址范围,本质也是一对一的映射,如果ip地址不用了就收回来。

access-list 1 permit 192.168.1.0 0.0.0.255---匹配感兴趣流量

ip nat pool qq 12.12.12.10 12.12.12.20 netmask 255.255.255.0---公网地址池

ip nat inside source list 1 pool qq---转换

Router(config)#int e0/0

Router(config-if)#ip nat inside ---制定nat内接口

Router(config)#int e0/1

Router(config-if)#ip nat outside---制定nat外接口

ip route 0.0.0.0 0.0.0.0 12.12.12.2---默认路由

地址池复用:在地址池中,实现多对一的映射。

ip nat inside source list 1 pool qq overload 

3pat---port nat 端口nat

         非常常见的NAT转换,经常使用在家庭或者公司,配置很简单。只允许用户主动访问互联网,不允许互联网访问用户。内网用户转换后产生的转换表30s清空一次

access-list 1 permit 192.168.1.0 0.0.0.255---匹配感兴趣流量

ip nat inside source list 1 interface e0/1 overload ---转换

Router(config)#int e0/0

Router(config-if)#ip nat inside ---制定nat内接口

Router(config)#int e0/1

Router(config-if)#ip nat outside---制定nat外接口c

ip route 0.0.0.0 0.0.0.0 12.12.12.2---默认路由

检查NAT:

Router#sh ip nat translations ----查看nat转换情况

Router#sh ip nat statitice ----查看nat静态转化情况

Router#sh access-list ---查看nat列表转化情况

Router#debug ip nat---查看数据包显示信息, PCping外网的时候在在边界路由上的抓包

Router#un all--关掉debug  no debug all 真机谨慎使用

这篇关于NAT---网络地址转换技术的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/846536

相关文章

关于集合与数组转换实现方法

《关于集合与数组转换实现方法》:本文主要介绍关于集合与数组转换实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、Arrays.asList()1.1、方法作用1.2、内部实现1.3、修改元素的影响1.4、注意事项2、list.toArray()2.1、方

利用Python脚本实现批量将图片转换为WebP格式

《利用Python脚本实现批量将图片转换为WebP格式》Python语言的简洁语法和库支持使其成为图像处理的理想选择,本文将介绍如何利用Python实现批量将图片转换为WebP格式的脚本,WebP作为... 目录简介1. python在图像处理中的应用2. WebP格式的原理和优势2.1 WebP格式与传统

Qt如何实现文本编辑器光标高亮技术

《Qt如何实现文本编辑器光标高亮技术》这篇文章主要为大家详细介绍了Qt如何实现文本编辑器光标高亮技术,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录实现代码函数作用概述代码详解 + 注释使用 QTextEdit 的高亮技术(重点)总结用到的关键技术点应用场景举例示例优化建议

java Long 与long之间的转换流程

《javaLong与long之间的转换流程》Long类提供了一些方法,用于在long和其他数据类型(如String)之间进行转换,本文将详细介绍如何在Java中实现Long和long之间的转换,感... 目录概述流程步骤1:将long转换为Long对象步骤2:将Longhttp://www.cppcns.c

在Java中将XLS转换为XLSX的实现方案

《在Java中将XLS转换为XLSX的实现方案》在本文中,我们将探讨传统ExcelXLS格式与现代XLSX格式的结构差异,并为Java开发者提供转换方案,通过了解底层原理、性能优势及实用工具,您将掌握... 目录为什么升级XLS到XLSX值得投入?实际转换过程解析推荐技术方案对比Apache POI实现编程

Java中的登录技术保姆级详细教程

《Java中的登录技术保姆级详细教程》:本文主要介绍Java中登录技术保姆级详细教程的相关资料,在Java中我们可以使用各种技术和框架来实现这些功能,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录1.登录思路2.登录标记1.会话技术2.会话跟踪1.Cookie技术2.Session技术3.令牌技

Python使用FFmpeg实现高效音频格式转换工具

《Python使用FFmpeg实现高效音频格式转换工具》在数字音频处理领域,音频格式转换是一项基础但至关重要的功能,本文主要为大家介绍了Python如何使用FFmpeg实现强大功能的图形化音频转换工具... 目录概述功能详解软件效果展示主界面布局转换过程截图完成提示开发步骤详解1. 环境准备2. 项目功能结

使用Python实现网页表格转换为markdown

《使用Python实现网页表格转换为markdown》在日常工作中,我们经常需要从网页上复制表格数据,并将其转换成Markdown格式,本文将使用Python编写一个网页表格转Markdown工具,需... 在日常工作中,我们经常需要从网页上复制表格数据,并将其转换成Markdown格式,以便在文档、邮件或

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Python将字符串转换为小写字母的几种常用方法

《Python将字符串转换为小写字母的几种常用方法》:本文主要介绍Python中将字符串大写字母转小写的四种方法:lower()方法简洁高效,手动ASCII转换灵活可控,str.translate... 目录一、使用内置方法 lower()(最简单)二、手动遍历 + ASCII 码转换三、使用 str.tr