原因:发现海外的ip地址突然无法访问。
解决方案:需要快速处理,原计划使用nginx的stream做转发,发现网站地址访问有问题。使用http做转发配置太多,后面使用iptables做nat转快,配置少。
stream{
server {
listen 1011 so_keepalive=on ;
proxy_connect_timeout 5s;
proxy_timeout 9999s;
proxy_pass dack1011;
}
upstream dack1011{
server 192.168.10.107:1011 max_fails=3 fail_timeout=20;
}
}
[root@XXX_192_168_10_230 ~]# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.4.21 on Fri Feb 7 16:45:57 2025
*nat //NAT规则
:PREROUTING ACCEPT [1:84]
:INPUT ACCEPT [1:84]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING -p tcp -m tcp --dport 1666 -j DNAT --to-destination 103.XX.9.XX:1666
#//进入的TCP流量重定向到指定的内部IP地址和端口
-A POSTROUTING -p tcp -m tcp --dport 1666 -j MASQUERADE
#//对指定端口的出去流量执行伪装(MASQUERADE),使得外部看到的源IP地址是防火墙自身的IP地址
COMMIT
# Completed on Fri Feb 7 16:45:57 2025
# Generated by iptables-save v1.4.21 on Fri Feb 7 16:45:57 2025
*filter//过滤规则
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5119 -j ACCEPT //对外放开5119
-A INPUT -s 10.0.0.0/24 -p tcp -m state --state NEW -m tcp -j ACCEPT //对10.0.0.0/24 全部开放
COMMIT