首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
测试工具
SmokePing
IPv6 访问测试
V2EX  ›  宽带症候群

如何为动态 IP 设置 1:1 NAT

  •  
  •   xiaofami · 161 天前 · 2401 次点击
    这是一个创建于 161 天前的主题,其中的信息可能已经有所发展或是发生改变。
    家里的网络可以通过 PPPoe 拨号获取多个外网 IP 地址。现在我想通过 1:1 NAT 将其中一个 IP 地址分配给内网中某台设备,使其完全暴露在外部网络。设置 1:1 NAT 一切顺利,经测试能得到 FullCone NAT 类型。不过 1:1 NAT 必须指定一个固定的 External IP,而通过 PPPoe 获取的地址是动态的,每次发生变化后都要重新设置规则。有没有办法绕过这种限制,比如说执行一个 cron 任务定期检查对应 WAN 口 IP,如果变化就自动更新规则,还是说有更好的解决办法?在设备上直接 PPPoe 拨号是可行的,但是为了管理方便我不想这么做 。。。 路由使用的是 pfSense。
    22 回复  |  直到 2018-01-19 09:17:27 +08:00
        1
    boywhp   161 天前
    感觉就是设置 DMZ 区,找找看有没有对应的设置项?
        2
    10467106   161 天前 via iPhone
    dmz 或 dnat
        3
    LGA1150   161 天前 via Android
    允许多拨?让终端再拨一次
        4
    mooncakejs   161 天前 via iPhone
    如果是 OP 之类,if up 脚本
        5
    lewiseek   161 天前 via Android
    能多线多拨吗,能的话上个交换机要单独获取 IP 的设备独立拨号不就行了
        6
    Tink   161 天前 via iPhone
    dmz
        7
    xiaofami   161 天前
    @boywhp @10467106 @Tink
    DMZ 貌似不行,我读到的文档说设置 DMZ 需要第三张网卡,我的 ESXI Host 机只有 2 张物理网卡,DMZ 即便设置好其他物理机也无法加入
    @LGA1150 @mooncakejs
    能多拨,终端也能独立拨号,不过感觉不如在路由端统一管理方便
        8
    LGA1150   161 天前 via Android
    @xiaofami
    SNAT 换成 MASQUERADE
        9
    qwvy2g   161 天前 via Android
    一对一 nat。
        10
    bazingaterry   161 天前 via iPhone
    利用 pppoe 的 hook ?
        11
    flynaj   161 天前 via Android
    ros 是有这个设置,你这个是不是已经没有更新的系统
        12
    bao3   161 天前
    应该是只要你有 **3** 个 interface 就可以,而不是三个物理网上。多数系统(*BSD/*linux)只是利用 interface 作逻辑区分用,而不是要求你有 **3** NIC。

    你再看一下你的文档,是 inteface 还是 NIC。
        13
    bao3   161 天前
    我 X,传说中 V2EX 说支持 markdown 呢,为毛我用的都不显示。。。
        14
    580a388da131   160 天前
    @bao3 回复不支持
        15
    terrancesiu   160 天前
    ros 容易,你说的 pfSense 没设置过。
        16
    msg7086   159 天前
    pfsense 本质上是 pf 编辑,你可以看看怎么写个脚本在拿到 ip 以后写 pf。
    而且你都走 ESXi 了,难道你的网卡是 pass through 的么,如果不是,那虚拟机上开虚拟的物理网卡不是分分钟。
        17
    skylancer   159 天前
    @xiaofami interface 和 adapter 分清楚好点...
        18
    xiaofami   159 天前
    @msg7086 我可能混淆了 DMZ 和 exposed host 的概念。一般家用路由器提供的“ DMZ ”功能,其实都是 exposed host ?如果没理解错,DMZ 的子网和 LAN 应该是不同的,而一般路由器提供的“ DMZ ”显然没有做到。
    另外对 DMZ 还有 2 点疑惑之处。一是如何加入 DMZ 区域。我的物理 NIC 没有直通,新建虚拟 NIC 没有问题,不过 ESXI Host 机外的物理设备貌似没办法接入。二是 DMZ 并没有解决 NAT 问题,还是需要做 1:1 map,于是又回到了问题的起点…
        19
    msg7086   159 天前
    @xiaofami 正好昨天在 tg 群里谈到这个问题。
    我查下来的资料是 DMZ 就是用 1:1NAT 实现的。
    也就是说,DMZ 是描述内网主机的,说的是电脑;而 1:1NAT 是描述网络连接方案的,说的是路由器。
    不知道我有没有理解错。

    你说的暴露主机,可能是 routing / bridge 到对应的主机吧,但是家庭网络也不支持 VLAN,应该是做不到的。
        20
    xiaofami   159 天前
    @msg7086 DMZ 是安全措施,NAT 是为了能够被公共访问到,两者经常一起使用,但并不能说 DMZ 是用 1:1 NAT 实现的。某论坛上看到的这段话解释得很清楚:

    The idea of a DMZ is that you have servers that need to be accessed from the internet, as we all know. The DMZ is a separate subnet that's logically outside of your inside LAN by applying security policies to what traffic can reach it. The bigger issue is servers get hacked. Now, if that server is in a DMZ, logic would indicate that you've also created rules in your firewall (which has DMZ and inside facing interfaces) NOT to allow any traffic to originate from that DMZ server and make connections to your inside LAN, protecting your inside LAN if that DMZ server gets compromised. If you put that server on your internal LAN and then NAT a public internet IP to it, people are connecting from the internet to that server in your LAN, and if they crack it they will have access to everything else on your inside LAN from that box. If it were in a DMZ and gets hacked, the firewall will block the hacker from making connections to the inside LAN from it.

    What Sosipater is saying about how you'll probably use NAT in your DMZ anyway because many people create a separate DMZ subnet and assign private, non-internet-routable IPs like 192.168.x.x to the servers in the DMZ. You then have to "NAT" whatever public internet IP, from your ISP, to that private IP assigned to the server. In this case, you're using BOTH a DMZ and NAT.

    Either way, if the server is going to be accessed from the Web, use a DMZ! Its a best practice and just the smart way to go. You already have a firewall. The only cost associated should be if you get payed OT or not... ;-)
        21
    flyfishcn   157 天前
    @xiaofami #20 如果是家用路由器,就不需要区分的那么清楚,你可以认为他们是同一个。区域的划分主要是靠安全等级。 当高安全级别区域访问低安全级别区域的时候,安全策略是默认允许的,低安全级别区域访问高安全级别区域则需要靠 ACL 放行。实际上 DMZ 并不是 interface 或者 adapter,而是类似于别名映射的关系。
        22
    chinawrj   156 天前
    OpenWRT 弄得话就是搞定了。你这个不会啊。iptables 可以轻松搞定。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   鸣谢   ·   767 人在线   最高记录 3541   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 19ms · UTC 18:12 · PVG 02:12 · LAX 11:12 · JFK 14:12
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1