Linux端口映射转发的方法
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,前言当我们在对接第三方的时候,免不了会遇到白名单限制问题,导致我们本地开发环境受限,不能调用接口。难以完成整个业务流程。分析如下场景:比如第三方有台机器 IP 为 1.1.1.1 端口8080正式环境
千家信息网最后更新 2025年12月02日Linux端口映射转发的方法
前言
当我们在对接第三方的时候,免不了会遇到白名单限制问题,导致我们本地开发环境受限,不能调用接口。难以完成整个业务流程。
分析如下场景:
比如第三方有台机器 IP 为 1.1.1.1 端口8080
正式环境为1.1.1.1:8080/pro/api
测试环境为1.1.1.1:8080/test/api
但是第三方的机器不允许任何IP都可以调用,他们只允许你方一台机器加入白名单
比如你线上的一台机器IP是2.2.2.2已经加入白名单,这没问题。
但是你要做开发 要调用他们测试环境的API,却发现调用不了,而且你总不能在2.2.2.2上面写代码调试吧。
解决方案
跳板服务
如果既然不能直接调用1.1.1.1 那么完全让2.2.2.2写个服务,作为跳板,也就是把我们的请求给2.2.2.2,然后2.2.2.2再原封不动传给1.1.1.1
Nginx转发
这个会比跳板服务简单多了。只要2.2.2.2 开启nginx
listen 8080;location /test/api/{ proxy_pass 1.1.1.1:8080;}端口映射
无论是跳板服务还是nginx转发 我们要做的事情就更多了。所以我们要想到另一种思路。就是2.2.2.2这台机器能不能帮我转发,只是作为一个中间者。就是我请求了2.2.2.2:8080 实际上请求到了是1.1.1.1:8080。即为端口映射。上面两种方案仅仅是用在http。那如果是其他协议呢 比如说sftp(ssh) ftp。也仅仅只有此方案能胜任。
- vi /etc/sysctl.conf开启允许端口转发。net.ipv4.ip_forward =1(CentOS7则是在 /usr/lib/sysctl.d/50-default.conf额外添加)
- iptables -t nat -A PREROUTING -p tcp -d 2.2.2.2 --dport 8080 -j DNAT --to-destination 1.1.1.1:8080 转发请求
- iptables -t nat -A POSTROUTING -p tcp -s 1.1.1.1 --sport 8080 -j SNAT --to-source 2.2.2.2:8080 转发接收
2.2.2.2 8080 转发到1.1.1.1:8080 (其他行情百度,也可以实现本地机器端口转发)
- service iptables save 保存设置
- service iptables restart 重启防火墙
总结
反正就是,多了解Linux,有些时候可以利用Linux知识来解决业务问题。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
机器
端口
就是
环境
跳板
服务
名单
方案
第三方
问题
业务
时候
开发
测试
原封不动
业务流程
也就是
事情
代码
内容
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
朝鲜网络安全公司
计算机网络技术工作与生活
java 获取服务器目录
Python实现键值数据库
软件开发相关的文献资料
银江股份网络安全
网线网卡插在服务器上没反应
网站如何搭建mysql数据库
pg 数据库新加列
服务器 需求
计算机网络技术的学习要求
人防技防物防 网络安全
地下城与勇士服务器连接
网络安全包括断卡吗
数据库开发工程师 面试题
无限法则哪个服务器好
成为vr软件开发者的要求
普陀区电商软件开发服务介绍
腾讯云域名上传到服务器
浙江c语言软件开发靠谱吗
如何更换服务器
软件开发最后会有什么工作
世嘉转为游戏软件开发商
oracle数据库表分析
上海市场软件开发服务优势
国内和国外网络安全组织机构
鹰潭企业服务器
数据库查询一列的最大值
软件和网络技术哪个前景好
网络安全证书有问题可以看吗