NAT学习笔记

NAT介绍

NAT, 全称网络地址转换(Network Address Translation),是一种在IP封包通过路由器防火墙时重写来源IP地址或目的IP地址的技术。

NAT的分类及介绍

NAT设备中最重要的是映射表了,映射表结构:

其中

外部协议:NAT设备的外部网络分配给该设备的IP地址

外部端口:NAT设备为这次连接从设备的端口池中分配的端口号

内部地址:NAT设备内部网络设备如PC,智能手机的局域网IP地址

内部端口:NAT设备内部网络中的设备发出网络消息时用的端口号

目的地址:希望接受到消息的设备的IP地址

目的端口:希望接受到消息的设备的端口号

NAT的主要作用

当有内部消息通过NAT设备发送到外部设备时,NAT设备会更改消息中的源IP地址和源端口为NAT设备自己的IP地址和端口号,并记录下这次映射操作到映射表中,这样就让目的设备以为是NAT设备发出的这个消息

当目标设备回复消息给NAT设备是,NAT会查找映射表中是否有匹配的记录,如果没有匹配到就丢弃消息,如果匹配到了就将消息的目标地址和目标端口号改成映射表中的内部地址和内部端口号,并将消息发给内部设备

这样就完成了请求和回复消息的通信工作, NAT设备在这一个过程中充当网络掩蔽或者IP掩蔽的作用,使外部设备并不知道内部设备的存在,只能直接和NAT设备通信,所有的通信都需要通过NAT设备的处理.

参考信息:

http://cgs1999.iteye.com/blog/1994072

https://zh.wikipedia.org/wiki/%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80%E8%BD%AC%E6%8D%A2

http://www.h3c.com.cn/Service/Channel_Service/Operational_Service/ICG_Technology/201001/662399_30005_0.htm

http://www.h3c.com.cn/MiniSite/Technology_Circle/Net_Reptile/The_Five/Home/Catalog/201206/747042_97665_0.htm

时间: 2024-11-05 01:41:02

NAT学习笔记的相关文章

Juniper SRX防火墙-NAT学习笔记!

Junos NAT第一部分:SRX NAT介绍第二部分:Source NAT:Interface NAT第三部分:Source NAT:Address Pools第四部分:Destination NAT第五部分:Static NAT--------------------------------------------------SRX Nat介绍1.Source NAT   //转换源的NAT,NAT+Gloabl2.Destination NAT  //Static pat3.Static

Linux netfilter 学习笔记 之十二 ip层netfilter的NAT模块代码分析

本节主要是分析NAT模块相关的hook函数与target函数,主要是理清NAT模块实现的原理等. 1.NAT相关的hook函数分析 NAT模块主要是在NF_IP_PREROUTING.NF_IP_POSTROUTING.NF_IP_LOCAL_OUT.NF_IP_LOCAL_IN四个节点上进行NAT操作,在上一节中我们知道nat表中只有PREROUTING.POSTROUTING.LOCAL_OUT三条链,而没有NF_IP_LOCAL_IN链,所以不能创建在LOCAL_IN hook点的SNAT

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程(高俊峰)

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程 第一课 Linux运维经验分享与思路 1.一般把主机名,写到hosts下    127.0.0.1    hostname,因为很多应用要解析到本地.oracle没有这个解析可能启动不了. 2.注释掉UUID以及MAC地址,需要绑定网卡的时候,这个可能会有影响. 3.磁盘满了无法启动,  var下木有空间,无法创创建PID等文件,导致文件无法启动,按e   进入single  然后b  重启进入单用户模式. 4.ssh登陆系

kvm学习笔记

http://blog.opskumu.com/ http://blog.csdn.net/kumu_Linux http://blog.opskumu.com/kvm-notes.html#kvm- KVM十年 virtio-gpu介绍 Linode 从 Xen 升级到 KVM qemu2.7编译实战 SPICE协议的理解 海量"小文件"优化秘籍:GlusterFS 让KVM虚拟机支持console功能 利用KVMGT-kernel,实现 KVM GPU虚拟化 让KVM虚机能使用音箱

RFC学习笔记 -- 5245 ICE & 3261 SIP

---------------------------------------------------------------------------- RFC list: 3550 (rtp/rtcp)  - 3711(srtp) - 5245 (ice) - 3261(sip) - 4575(sip-conference) - 4566(sdp) 5389 (stun) - 5766(turn) - 6455(websocket) - 6865(fec) - 2616(http) -----

hadoop学习笔记——基础知识及安装

1.核心 HDFS  分布式文件系统    主从结构,一个namenoe和多个datanode, 分别对应独立的物理机器 1) NameNode是主服务器,管理文件系统的命名空间和客户端对文件的访问操作.NameNode执行文件系统的命名空间操作,比如打开关闭重命名文件或者目录等,它也负责数据块到具体DataNode的映射 2)集群中的DataNode管理存储的数据.负责处理文件系统客户端的文件读写请求,并在NameNode的统一调度下进行数据块的创建删除和复制工作. 3)NameNode是所有

HCNA学习笔记4

这是我3月14号和3月15号的学习内容,主要包括ACL.AAA.VPN相关知识.SNMP原理配置以及IPv6的一些基础知识. 网络安全知识 ACL ACL(Access Control List)访问控制列表,定义一系列不同的规则,设备根据这些规则对数据包进行分类,针对不同类型的报文进行不同的处理. 三种ACL:基本ACL.高级ACL.二层ACL. 基本ACL:编号范围:2000-2999,使用报文的源IP地址.分片标记和时间段信息来匹配报文: 高级ACL:编号范围:3000-3999,使用报文

Linux 程序设计学习笔记----命令行参数处理

转载请注明出处.http://blog.csdn.net/suool/article/details/38089001 问题引入----命令行参数及解析 在使用linux时,与windows最大的不同应该就是经常使用命令行来解决大多数问题.比如下面这样的: 而显然我们知道C语言程序的入口是mian函数,即是从main函数开始执行,而main函数的原型是: int main( int argc, char *argv[] ); int main( int argc, char **argv );

HANA学习笔记1-搭建HANA学习环境

一 硬件环境     两台电脑,一台为服务器装跑HANA虚拟机,一台为客户端运行HANA_STUDIO     服务器:内存至少需要16G     windows server 2003 64位     客户端:windows 7 64位   二软件环境     服务器:VMware 9.0    HANA虚拟机镜像     客户端:jdk   sapcar   SAP_HANA_CLIENT SAP_HANA_STUDIO 软件的下载地址如下:     HANA虚拟机镜像:http://pan