Linux 内核工具 iptables 配置TCP/UDP端口转发(命令参考)

news/2024/5/18 14:26:13 标签: linux, tcp/ip, udp

1、配置TCP端口转发

把本机20000/TCP端口转发到7.7.7.7:20000

iptables -t nat -A PREROUTING -p tcp --dport 20000 -j DNAT --to-destination 7.7.7.7:20000
iptables -t nat -A POSTROUTING -j MASQUERADE

2、配置UDP端口转发

把本机20000/UDP端口转发到7.7.7.7:20000

iptables -t nat -A PREROUTING -p udp --dport 20000 -j DNAT --to-destination 7.7.7.7:20000
iptables -t nat -A POSTROUTING -j MASQUERADE

3、配置TCP端口转发(限制网卡IP)

本机网卡10.0.0.5:20000端口收到数据转发给7.7.7.7:20000

iptables -t nat -A PREROUTING -p tcp -d 10.0.0.5 --dport 20000 -j DNAT --to-destination 7.7.7.7:20000
iptables -t nat -A POSTROUTING -j MASQUERADE

4、配置UDP端口转发(限制网卡IP)

本机网卡10.0.0.5:20000端口收到数据转发给7.7.7.7:20000

iptables -t nat -A PREROUTING -p udp -d 10.0.0.5 --dport 20000 -j DNAT --to-destination 7.7.7.7:20000
iptables -t nat -A POSTROUTING -j MASQUERADE

5、定向TCP/UDP端口转发链,即不需要添加规则;

(iptables -t nat -A POSTROUTING -j MASQUERADE)

echo "${0} LocalIP LocalPort RemoteIP RemoteTcpPort RemoteUdpPort"
echo "${0} 172.16.0.29 55100 52.175.123.215 5000 10000"

#        iptables -t nat -A PREROUTING -p tcp --dport 55100 -j DNAT --to-destination 40.83.118.93:17000
#        iptables -t nat -A POSTROUTING -p tcp -d 40.83.118.93 --dport 17000 -j SNAT --to-source 172.16.0.29  
#        iptables -t nat -A PREROUTING -p udp --dport 55100 -j DNAT --to-destination 40.83.118.93:7000
#        iptables -t nat -A POSTROUTING -p udp -d 40.83.118.93 --dport 7000 -j SNAT --to-source 172.16.0.29 

        iptables -t nat -A PREROUTING -p tcp --dport $2 -j DNAT --to-destination $3:$4
        iptables -t nat -A POSTROUTING -p tcp -d $3 --dport $4 -j SNAT --to-source $1  
        iptables -t nat -A PREROUTING -p udp --dport $2 -j DNAT --to-destination $3:$5
        iptables -t nat -A POSTROUTING -p udp -d $3 --dport $5 -j SNAT --to-source $1 

        iptables -t nat --list -n


http://www.niftyadmin.cn/n/5455275.html

相关文章

vue父组件值变化,子组件不刷新的问题(三种方案)

目录 1、在子组件使用 watch 监听 props传过来的值,如果发现改变,调用forceUpdate刷新视图。 2、父组件中声明一个布尔变量,数据发生变化后,切换一下变量状态,可刷新子组件视图。 3、数据发生变化后,在下…

辅助 vue2 开发的插件

vue-jump-helper 效果视频 帮助 Vue Options Api 项目的 this.xxx 调用跳转,HTML 模版内的属性、方法跳转,以及 this.$refs.comp.xxx 的跳转,助力提升老项目的开发体验 Options Api 跳转 this.xxx 跳转 子组件方法、属性跳转 this.$refs…

Centos7.9备份mysql数据库

1. 备份 备份shell脚本 [rootiZoqvrzbtnzd6kZ local]# vi mysql_backup.sh #!/bin/bash #设置MySQL登录信息 MYSQL_USER"root" MYSQL_PASSWORD"**********" MYSQL_DATABASE"ubox" BACKUP_DIR"/usr/local/mysql_backup" MONTH"…

Rust 开发的高性能 HTTP 请求工具

一、简述 在现在的软件开发领域,HTTP请求的快速验证变得越来越重要。特别是对于后端开发人员和测试工程师来说,能够快速创建、执行并验证HTTP请求对于提升开发效率至关重要。近期有一个名为Hurl的开源项目,它被设计来高效执行HTTP请求&#…

sqlalchemy.exc.CompileError: can‘t render element of type MEDIUMTEXT

在SQLite中,由于它没有像MySQL那样支持MEDIUMTEXT类型;想要实现测试环境使用sqlit方便开发;生产环境使用MEDIUMTEXT才能符合业务需求;让orm自动适配 在测试环境和生产环境中使用不同的数据库,而不需要修改模型代码。 下面是如何…

电气知识一、三相电的中性点、零点,中性线、零线

中性点与零点、中性线与零线的区别是什么? 其实中性点、零点、中性线、零线的含义是:中性点是指发电机或变压器的三相电源绕组连成星形时三相绕组 的公共点。零点是指接地的中性点。中性线是指从中性点引出的导线。零线是指从零点引出的导线。 &#xff…

Python爬虫如何快速入门

写了几篇网络爬虫的博文后,有网友留言问Python爬虫如何入门?今天就来了解一下什么是爬虫,如何快速的上手Python爬虫。 一、什么是网络爬虫 网络爬虫,英文名称为Web Crawler或Spider,是一种通过程序在互联网上自动获取…

Unity | 工具类-按钮长按

1.继承Button,利用OnPointerDown和OnPointerUp来实现长按监听。 using UnityEngine; using UnityEngine.Events; using UnityEngine.EventSystems; using UnityEngine.UI;public class ButtonPress : Button {public bool isPointerDown false;private float time…