zoukankan      html  css  js  c++  java
  • iptables实现NAT转发

    环境

    服务器A:192.168.1.7
    服务器B: 192.168.1.160

    需求

    实现将本机(192.168.1.7:7410)端口流量转发给(192.168.1.160:9200)。

    1. 内核允许IP转发

    # 1.1 会话
    echo 1 > /proc/sys/net/ipv4/ip_forward
    
    # 1.2 永久
    vi /etc/sysctl.conf
    添加如下代码:
        net.ipv4.ip_forward=1
    
    重启network服务
     systemctl restart network
    
    查看是否修改成功
     sysctl net.ipv4.ip_forward
    

    2. 加载内核模块

    modprobe ip_conntrack
    

    3. 设置filter表基础策略:允许入包/出包/转发(可进一步细化)

    iptables -P INPUT ACCEPT
    iptables -P OUTPUT ACCEPT
    iptables -P FORWARD ACCEPT
    

    4. 设置基础会话规则

    iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
    

    5. 端口转发流量

    iptables -t nat -A PREROUTING -d 192.168.1.7/32 -p tcp --dport 7410 -j DNAT --to-destination 192.168.1.160:9200;
    iptables -t nat -A POSTROUTING -d 192.168.1.160/32 -p tcp --dport 9200 -j SNAT --to-source 192.168.1.7;
    

    6.保存

    service iptables save
    service iptables restart
    

    7. 测试

    telnet 192.168.1.7:7410 
    

    其他

    ### 停止
    service iptables stop
    ### 查看状态
    service iptables status
    ### 备份
    iptables-save > ables.bak
    ### 还原
    iptables-restore < iptables.bak
  • 相关阅读:
    5-4 链表的天然递归结构性质
    java8 Optional 解析
    [leetcode] Unique Binary Search Trees
    [leetcode] Anagrams
    [leetcode] Valid Number
    构造素数表2
    构造素数表1
    整型所占字节
    习题7-8 字符串转换成十进制整数
    习题7-7 字符串替换
  • 原文地址:https://www.cnblogs.com/ellisonzhang/p/13071264.html
Copyright © 2011-2022 走看看