TMOS系统之NATS 和 SNAT
NAT 和 SNAT 简介
NAT 和 SNAT 的比较
NAT
|
SNAT
|
---|---|
用户只能将一个原始地址映射到转换地址。
|
用户可以将多个原始地址映射到一个转换地址。用户甚至可以将网络上的所有节点地址映射到单个 SNAT 对象中的单个公共 IP 地址。
|
内部节点上的所有端口都是开放的。
|
默认情况下,SNAT 仅支持 UDP 和 TCP。这使得 SNAT 比 NAT 更安全。
|
本地流量管理器不跟踪 NAT 连接。
|
本地流量管理器跟踪 SNAT 连接,这反过来又允许 SNAT 和虚拟服务器使用相同的公共 IP 地址。
|
用户必须在内部节点的流量到达 BIG-IP 系统的内部 VLAN 上显式启用 NAT。
|
默认情况下,用户创建的 SNAT 在所有 VLAN 上启用。
|
关于 NAT
入站连接的 NAT
Without a NAT
- 外部网络上的客户端通常将流量发送到 BIG-IP 系统上的虚拟服务器。在这种情况下,目标 IP 地址是虚拟服务器地址。
- 收到数据包后,虚拟服务器通常将该目标 IP 地址转换为池成员的 IP 地址,以实现对该数据包的负载平衡。
- 然后池成员使用服务器节点路由表中指定的路由(理想情况下,分配给内部 VLAN 的浮动 IP 地址)通过 BIG-IP 系统发回其响应。收到响应后,本地流量管理器执行反向转换;也就是说,系统将池成员的实际源地址转换为虚拟服务器地址。这导致对客户端的响应中的源地址是虚拟服务器地址,这是客户端期望看到的源地址。
使用 NAT
.
- NAT 地址为207.10.1.103, 源地址为 172.16.20.3
- 该连接是入站连接,这意味着该连接是从外部网络通过 BIG-IP 系统启动到内部网络的。
- 本地流量管理器将 NAT 地址转换为源地址。
- NAT 地址和源地址是目的地址。
用于出站连接的 NAT
例如,假设一个内部节点(如邮件服务器)的私有类 IP 地址为172.16.20.1. 用户可以创建一个旨在转换私有类地址的 NAT172.16.20.1到用户选择的公共源地址(例如207.10.1.101)。因此,每当内部节点 172.16.20.1发起一个以外部网络节点为目的地的连接,系统将转换该节点的源地址 172.16.20.1到其公共地址(207.10.1.101)。
NAT 有两种设置;NAT 地址和来源地址. 在这个例子中:
- NAT 地址为207.10.1.101
, 源地址为172.16.20.1.
- 该连接是出站连接,这意味着该连接是从内部网络通过本地流量管理器启动到外部网络的。
- 本地流量管理器将源地址转换为 NAT 地址。
- 源地址和 NAT 地址是源地址。
关于 SNAT
一种安全网络地址转换 (SNAT)
对于入站连接,即由客户端节点发起的连接,SNAT 确保服务器节点始终通过 BIG-IP 系统发送响应,而服务器的默认路由通常不会这样做。因为 SNAT 导致服务器通过 BIG-IP 系统发回响应,客户端看到响应来自客户端发送请求的地址,因此接受响应。
是 BIG-IP 本地流量管理器功能,可将连接中的源 IP 地址转换为用户定义的 BIG-IP 系统 IP 地址。然后,目标节点在响应请求时使用该新源地址作为其目标地址。
客户端发起(入站)连接的 SNAT
- 服务器节点与 BIG-IP 系统位于同一子网上。
- 客户端节点与服务器节点位于不同的子网上。
- BIG-IP 系统是服务器子网的默认网关。
服务器发起(出站)连接的 SNAT
- 本地流量管理器从原始 IP 地址(即具有私有 IP 地址的内部服务器)接收数据包,并检查该源地址是否在 SNAT 中定义。
- 如果在 SNAT 中定义了原始 IP 地址,则本地流量管理器将该源 IP 地址更改为在 SNAT 中定义的转换地址。
- 本地流量管理器然后将 SNAT 转换地址作为源地址的数据包发送到目标主机。
多个传出连接的示例 SNAT
SNAT 类型
- 用户指定特定转换地址的 SNAT
- 使用自动映射功能的 SNAT
- 一个 SNAT,用户在其中指定一个 SNAT 池作为用户的转换地址
关于转换地址
原始 IP 地址
VLAN 流量
关于临时端口耗尽
# tmsh modify ltm global-settings traffic-control port-find-threshold-warning enabled
# tmsh modify ltm global-settings traffic-control port-find-threshold-trigger 8
# tmsh modify ltm global-settings traffic-control port-find-阈值超时 30
.
TMOS系统之NATS 和 SNAT相关推荐
- CloudFoundry源码分析:NATS
简介 NATS是一个轻量的消息发布-订阅系统.NATS的核心是Event machine. Server 名为server.rb的文件有两个. 一个是lib/nats/server.rb,这个是ser ...
- 应用交付老兵眼中的Envoy, 云原生时代下的思考
Envoy 是云原生时代的明星,其本质是反向代理负载均衡类软件,领域上归于应用交付,那么作为应用交付领域的老兵如何看待 Envoy,Envoy 又引发了哪些关于传统应用交付领域的思考? 关于作者 林静 ...
- 沁恒蓝牙芯片CH57x系列学习与应用
沁恒蓝牙芯片CH57x系列学习与应用 沁恒的蓝牙芯片例程已经将各个函数集合的很高,不同主从机例程的主函数中,往往只有一至两个的函数调用的区别,但是在这一到两个函数中,差别却是很大的. 以沁恒的外设从机 ...
- Log4j 爆发“核弹级”漏洞、工信部力推开源软件发展、“龙腾计划”启动|开源月报 Vol. 02...
「WeOpen Insight」是腾源会全新推出的"开源趋势与开源洞见"内容专栏,不定期为读者呈现开源圈内的第一手快讯.优质工具盘点等,洞察开源技术发展的风向标,预见未来趋势. P ...
- CH579实现一个最小外围设备(Peripheral)
本文基于CH579实现一个最小外围设备,在官方历程Peripheral的基础上精简. 1.main函数 int main( void ) {#if (defined (HAL_SLEEP)) & ...
- Linux系统的iptables防火墙、SNAT、DNAT原理与设置规则
Linux的iptables防火墙.SNAT.DNAT 一.iptables概述 1.netfilter/iptables关系 2.四表五链 四表 五链 规则表之间的优先顺序 规则链之间的匹配顺序 二 ...
- nats需要消息服务器吗,浅谈NATS消息系统
我用过很多消息系统,比如:简单的 Redis Streams:高效的 Kafaka 等等,不过自从我把编程语言切换到 Golang 以后,总觉得必须找个用 Golang 开发的消息系统才配得上门当户对 ...
- nats服务器状态未启用,消息系统NATS常见的几个问题
1)Request()和Publish()之间的不同 Publish()发送一条消息到gnatsd,是使用它的地址作为一个subject,而gnatsd交付消息给所有注册了此subject的订阅者.可 ...
- centos6.5下系统编译定制iptables防火墙扩展layer7应用层访问控制功能及应用限制QQ2016上网...
iptables防火墙扩展之layer7应用层访问控制 概述: iptables防火墙是工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙.以基于网络层的数据包过滤机制为主,同 ...
最新文章
- SQLserver安全设置攻略
- lua菜鸟教程_Lua 环境安装
- 目前区块链项目的生态系统:一共七大类
- 计算机启动进入不了桌面图标,电脑开机只显示桌面背景而无桌面图标怎么办
- android微信朋友圈视频无法播放,微信朋友圈不能分享手机视频怎么回事?微信朋友圈大视频功能安卓不能用吗?...
- mysql in partition_MySQL Partition分区扫盲
- (二)AS给button添加点击事件
- js的正则自定义金额输入验证函数
- Hement:MVP架构设计(一)
- VC创建可隐藏文件夹的方法
- mysql为何500w拆表_【mysql】MySQL 单表500W+数据,查询超时,如何优化呢?
- Android版日语学习应用的逆向分析
- fatal error LNK1123 错误解决方法
- linux投影手机,linux连接投影机方法介绍
- 2022-2028年中国保健食品行业市场运营格局及前景战略分析报告
- Android 360全景开发(PanoramaGL)
- 喜马拉雅产品分析报告
- DP:地头蛇PIPI
- Uboot代码结构详细分析
- matlab画分形图的具体思路,分形几何中一些经典图形的Matlab画法