暗能星系

    • 登录
    • 搜索

    通过NAT 让内外服务器访问互联网

    问题记录及解决
    1
    4
    36
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • A
      anneng 最后由 anneng 编辑

      打开大服务器ip转发
      sudo sh -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'

      设置大服务器内网转发规则
      例如:内网192.168.1.3过来的要访问外网的报文都通过路由服务器的103.114.101.5 这个大网IP转发出去
      sudo iptables -t nat -A POSTROUTING -s 192.168.1.3/24 -o eno0 -j SNAT --to 103.114.101.5

      设置内网的网络配置:
      network:
      ethernets:
      eno1:
      addresses: [192.168.1.3/24]
      gateway4: 192.168.1.2
      nameservers:
      addresses: [8.8.8.8,114.114.114.114]
      version: 2
      将网关指向路由服务器的内网地址192.168.1.2

      9ade41ce-99bb-438b-9c94-7e9b31085d0d-image.png

      1 条回复 最后回复 回复 引用 0
      • A
        anneng 最后由 编辑

        anneng@anneng-730xd:~$ route
        Kernel IP routing table
        Destination Gateway Genmask Flags Metric Ref Use Iface
        default _gateway 0.0.0.0 UG 0 0 0 eno1
        default _gateway 0.0.0.0 UG 0 0 0 eno1
        192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eno1

        发现从内网ping baidu.com 不稳定 有丢包 查看路由表 发现有两个默认网关 删掉了一个 正常了
        sudo route delete default

        1 条回复 最后回复 回复 引用 0
        • A
          anneng 最后由 编辑

          服务器重启后 记得检查下网口名字 可能会变成eno1

          sudo iptables -t nat -A POSTROUTING -s 192.168.1.3/24 -o eno1 -j SNAT --to 103.114.101.5

          1 条回复 最后回复 回复 引用 0
          • A
            anneng 最后由 编辑

            sudo iptables -t nat -L --line-numbers
            973cd272-9619-4e8f-8ad1-5f4bd0543b2b-image.png
            删除某个rule
            sudo iptables -t nat -D POSTROUTING 2

            1 条回复 最后回复 回复 引用 0
            • First post
              Last post
            Powered by 暗能星系