各位大大好

想问一下各位有没有在Fortigate的policy上做过同一个Interface / Zone的时候做Port Forwarding然后中间要接一个SNAT的转换呢? (如下图)

当用户由(192.168.1.1) 去找 (192.168.1.100)的时候会做一个port forwarding的动作(比如一个WAN IP 1.1.1.1 map 192.168.1.100) 然后 中间可能又要把Source可能换成1.1.1.2

这个想法好像是可行的 可是我没有经验 所以想问一下有大大有经验可行吗? 如果有多条要同时这样子做 是否比较推荐使用Central NAT跟DNAT&VIP的功能呢?

4 个回答

  • 旧至新
  • 新至旧
  • 最高Like数

0

bluegrass

iT邦高手 1 级 ‧ 2025-01-13 09:16:58

最佳解答

你这个应该叫作NAT LOOPBACK / NAT U-TRUN

就是SNAT跟DNAT同时发生, 比较多应用在内部用户用WAN IP去抓内部服务器的情况

在FORTIGATE世界中, 如果你想要做到一样

只要把目标WAN IP放到WAN INTERFACE再配上VIP跟POLICY就可以了

比方1.1.1.0/24是你可用的WAN IP, 1.1.1.1是FORTIGAT自身的WAN IP

你目标是把1.1.1.2 转发到 192.168.1.100
那你只要把1.1.1.2/32设成FORTIGATE WAN的SECONDARY IP即可

如果要转发的时发把SNAT一并改成某SOURCE IP, 就得在转发的POLICY上启用NAT再点选 IP POOL


  • 3

bluegrass

iT邦高手 1 级 ‧
2025-01-13 09:34:24

PS, 也有人叫 nat hairpin

修改

ccccccc123

iT邦新手 5 级 ‧
2025-01-13 19:58:45

可是bluegrass大大 想请教一下
如果有可能几百条是这种情况下 是否在Fortigate上使用Central NAT跟DNAT&VIP 会比较好处理? 因为我在想 如果我要每一条都同时做SNAT跟PNAT的话 用CLI都搞不定

另外我记得在Fortigate上 好像一般是不用做nat loopback的吧?

修改

bluegrass

iT邦高手 1 级 ‧
2025-01-14 09:12:35

Fortigate上, 如果你要loopback WAN IP正好就是FORTIGATE自身的WAN IP就可以不用手动做.

如果真有几百条就用CLI吧-.- 我工程都是这样处理的

如果你真的怕麻烦,
用CLI "set Match-vip enable" 就可以自动命中所有VIP了

https://community.fortinet.com/t5/FortiGate/Troubleshooting-Tip-VIP-traffic-not-matching-the-firewall-policy/ta-p/266101

旦你放行的SERVICE可别设成ALL喔-.- 出什么事就你BBQ了

Central NAT跟DNAT&VIP一般我是不建议的.
( 你确定UTM在Central NAT情况下的DNAT有在用?_? )

修改

0

cmwang

iT邦大师 1 级 ‧ 2025-01-11 17:47:08

您应该是client要连在同一LAN中server的对外IP(Forti称为VIP,但我觉得这个名词不是很好),192.168.1.100连1.1.1.1时Forti会把Src改成FW自己LAN的IP,Dst改成192.168.1.1转给真正的server,所以192.168.1.1会回给FW的LAN IP,FW把Src改成1.1.1.1后再回给192.168.1.100,一般称为NAT loopback,只要VIP/ACL有定义好是没问题的....

0

mytiny

iT邦超人 1 级 ‧ 2025-01-11 18:54:20

看不出这样做的用意在哪?
如果是在相同区域
192.168.1.1与.1.100不需要换IP通讯
特意穿过防火墙是为了什么
(这不是hair-pin架构)
做资安检核吗?
完全不需要用到这样架构呀
感觉有些奇怪
要不要找SI好好研究一下
不要自己硬扛呀


  • 7

看更多先前的...收起先前的...

ccccccc123

iT邦新手 5 级 ‧
2025-01-11 23:54:50

其实这个是客人那边的要求 我大概猜他是想一方面做资安检核? 另一方面是想当成一个POC的型式去试一下那些rules?

修改

bluegrass

iT邦高手 1 级 ‧
2025-01-13 09:20:47

用意在哪? 我猜一般有两种

一个是NAT LOOPBACK ,另一个是要实行UTM

这种做法在不能改变LAN IP情况下又想要UTM的话, 我觉得算是比较可取

当然了, 搞一个TRANSPARENT MODE VDOM再把SERVER接过去也可以了.

修改

mytiny

iT邦超人 1 级 ‧
2025-01-13 13:00:32

这应该不是lookback interface
也不是hair-ping
因为正常.1.1和.1.100会在同一侧

修改

ccccccc123

iT邦新手 5 级 ‧
2025-01-13 20:00:43

我想应该是一个LOOPBACK在POC场上试一下连结/UAT的样子
因为我看差不多每一条都有这样子的LOOPBACK
应该是想装作成外来的WAN IP去做测试之类

修改

mytiny

iT邦超人 1 级 ‧
2025-01-14 08:31:34

如果做UAT应该要模拟环境实际的样子
一开始就好奇此架构的用意
如果没有预先知道测试的目的
架构测出来很可能是错误的结果
如果是lookback interface或hair-pin
.1.1和.1.100会在同一侧
这种跨FG不同port又同一网段
比较像测试microsegmentation

修改

杰克

iT邦新手 5 级 ‧
2025-01-22 14:00:32

ccccccc123
是不是跟客户先确认他们 DNS 规划有没有分出组织内部专用的查询。
通常会这样从 LAN 去访问 WAN 上面的对外服务 IP 就是没有维护一个供内部查询的 DNS 服务,所以直接跑到公共的 DNS Server 查到对外服务的 IP。如果是这样的话,请客户自建一个有分不同 View 的 DNS Server,这样的重要网路服务才是比较恰当的规划。

修改

mytiny

iT邦超人 1 级 ‧
2025-01-23 21:10:40

整个架构都怪怪的
最终也没说清楚到底想干嘛?

修改

0

无敌舔金刚

iT邦新手 5 级 ‧ 2025-01-15 10:57:55

您的架构必须成立在防火墙两个介面192.168.1.1跟192.168.1.100属于不同网段,也就是子网路遮照不能大于192.168.1.1/26,小于26,两个IP会变同网段,防火墙无法设定介面。
另外如是同网段,防火墙必须使用透通模式,防火墙透通模式下无法做任何NAT设定。

假设子网路遮照是设定192.168.1.1/26跟192.168.1.100/26
防火墙会有一组192.168.1.1/26跟192.168.1.100/26的IP,假设是设定192.168.1.62/26,跟192.168.1.126/26。

防火墙先设定一组Virtual IPS
IPV4 VIP,1.1.1.1 map 192.168.1.100,
再设定一组IP pool: 1.1.1.2,Type选one-on-one或是overload都可以,External IP address/range设定1.1.1.2-1.1.1.2。

设定防火墙政策
来源IP:192.168.1.1
目的IP:选设定的那组VIP1.1.1.1 map 192.168.1.100

然后把该条防火墙政策中的NAT选项打开,IP Pool Configuration选use dymanic IP POOL,去选那组设定的IP pool: 1.1.1.2,就可以把来源IP NAT成1.1.1.2了。

整段连线就会变成192.168.1.1去连1.1.1.1,防火墙会把目的IP NAT成192.168.1.100,来源IP NAT成1.1.1.2。

另外要注意
192.168.1.1到1.1.1.1的路由是指向192.168.1.62/26,
192.168.1.100到1.1.1.2的路由是指向192.168.1.126/26,

以上为小弟实务上浅见,如有错误之处还请先进指正。