NAT、TUN、DR三种模式

NAT、TUN、DR 是 LVS(Linux Virtual Server)负载均衡中最经典的三种工作模式(也叫转发模式),它们主要用于将客户端请求分发到后端真实服务器(Real Server,简称 RS)。

TUN 和 DR 很相似 ,两者都属于"三角模式"(Direct Server Return,DSR),即:

  • LVS(Director)只处理入站请求(客户端 → LVS → RS)。
  • 响应包(RS → 客户端)直接绕过 LVS 返回给客户端(避免 LVS 成为瓶颈)。
  • 两者都要求在 RS 上配置 VIP(Virtual IP,虚拟 IP,通常绑定在 lo 接口上,且抑制 ARP 响应)。

它们的主要区别,一个改 IP(隧道层),一个改 MAC(链路层)

1. NAT 模式(Network Address Translation,地址转换)

  • 工作原理 :LVS 作为网关,对请求包做 DNAT (改目标 IP 为 RS 的 RIP),响应包再做 SNAT(改源 IP 为 VIP)。
  • 请求和响应都经过 LVS
  • 特点
    • 配置最简单,后端 RS 可以用私有 IP,网关指向 LVS。
    • 支持端口映射。
    • 缺点:LVS 负载高(进出流量都走它),扩展性差(一般只能带 10-20 台 RS),适合小规模或需要端口映射的场景。
  • 适用:后端服务器不在同一网段,或对配置要求低的情况。

2. DR 模式(Direct Routing,直接路由)

  • 工作原理 :LVS 只修改请求包的目标 MAC 地址(改为选中 RS 的 MAC),IP 头保持不变(目标 IP 仍是 VIP)。RS 收到后直接用 VIP 作为源 IP 回复客户端。
  • 作用在数据链路层(Layer 2)
  • 特点
    • 性能最好(几乎无额外开销,无隧道封装)。
    • LVS 和所有 RS 必须在同一物理网段/局域网(因为改 MAC 需要二层可达)。
    • 不支持端口映射。
    • 响应包直接返回,LVS 压力最小。
  • 适用:高并发、大流量场景(如 Web 服务器集群),互联网公司最常用。

3. TUN 模式(IP Tunneling,IP 隧道)

  • 工作原理 :LVS 不修改 原请求包,而是在外面再封装一层 IP 头(源 IP 为 LVS 的 DIP,目标 IP 为 RS 的 RIP)。RS 解封装后处理请求,用 VIP 作为源 IP 直接回复客户端。
  • 作用在网络层(Layer 3)
  • 特点
    • 和 DR 一样,响应包绕过 LVS,性能很高。
    • 支持跨网段/不同 VLAN/甚至地理位置不同(因为用 IP 隧道路由)。
    • 需要 RS 支持 IP 隧道协议(IPIP 或 GRE),有轻微的封装/解封装开销。
    • 不支持端口映射。
  • 适用:当 RS 和 LVS 不在同一局域网时(DR 做不到的场景)。

TUN 与 DR 的相似与区别总结(你提到的点)

  • 相似之处

    • 都是 DSR(Direct Server Return),只改请求、不改响应。
    • 响应包都直接从 RS → 客户端(源 IP 是 VIP)。
    • RS 都需要配置隐藏的 VIP(在 lo 接口)。
    • 性能都远高于 NAT,适合大规模集群。
    • LVS 压力小,可扩展性强。
  • 主要区别(正如你说的"一个是 IP 地址,一个是 MAC 地址"):

    • DR :修改目标 MAC 地址 (二层转发),简单高效,但必须同网段
    • TUN :封装新 IP 头 (三层隧道),能跨网段/路由,但有隧道开销,且 RS 要支持隧道。

简单比喻:

  • DR 像"同一楼层改门牌号(MAC)直接送货"。
  • TUN 像"不同楼层/不同小区,用快递箱(隧道)套一层再送"。

实际选择建议

  • 首选 DR:同网段 + 高性能需求(最常用)。
  • 选 TUN:需要跨网段/不同机房时。
  • 用 NAT:配置简单、小规模、或需要端口映射时。
  • 还有 Full NAT 等变种,但主流还是这三种。
相关推荐
末日汐2 小时前
网络层IP
服务器·网络·tcp/ip
@encryption2 小时前
计算机网络 --- 动态路由
网络
IT小Qi11 小时前
iperf3网络测试工具
网络·python·测试工具·信息与通信·ip
以神为界11 小时前
Python入门实操:基础语法+爬虫入门+模块使用全指南
开发语言·网络·爬虫·python·安全·web
Tong Z12 小时前
TCP中的常见概念
网络·网络协议·tcp/ip
JS_SWKJ13 小时前
从 “物理孤岛” 到 “数字桥梁”:江苏深网科技以隔离技术筑牢网络安全防线
网络·科技·web安全
9523614 小时前
网络原理(协议)
网络
M1582276905514 小时前
8 通道 Modbus 模拟信号采集卡|工业传感器数据一键上云
网络
RTC老炮14 小时前
带宽估计算法(gcc++)架构设计及优化
网络·算法·webrtc