iptables做路由转发服务器经典案例
需求描述:
当前有一台服务器B IP假设为10.10.10.10 此台服务器有smtp、pop服务,用户可以正常使用
当前为了区别个性服务,需要部分用户从服务器A(192.168.100.100)去使用smtp、pop;
业务逻辑:部分用户的smtp、pop从10.10.10.10改为192.168.100.100,我们这里使用iptables的策略实现:
此案例较其他iptables策略不同的地方,在于,iptables既做了 POSTROUTING 也做了 PREROUTING ;因为如果不这么做的话,就会导致服务器 B 无法回报。
1、首先测试服务器B的业务正常:(为了私密性,所有真实IP都已经打码,大家可以对照上图,自行对号入座,望理解)
测试正常,
服务器 A 添加 iptables 策略如下:
iptables -t nat -I POSTROUTING -s 0.0.0.0/0.0.0.0 -o bond0 -j SNAT --to-source 192.168.100.100 iptables -t nat -I PREROUTING -i bond0 -d 192.168.100.100 -p tcp --dport 110 -j DNAT --to-destination 10.10.10.10 iptables -t nat -I PREROUTING -i bond0 -d 192.168.100.100 -p tcp --dport 25 -j DNAT --to-destination 10.10.10.10
记得在转发服务器开启路由转发:
net.ipv4.ip_forward = 1
将从此主机转发出去的出口IP转换为本机IP,然后将访问本机的25 110端口转发到 服务器B
开始以 服务器A 上IP进行业务测试:
测试业务通过~
转载于:https://blog.51cto.com/lansgg/1752663
iptables做路由转发服务器经典案例相关推荐
- linux服务器数据转发,Linux云服务器如何使用iptables做流量转发?
在云服务器的日常使用过程中,从老服务器迁移数据到新服务器是不可避免的一项运维操作.在新老服务器交替的迁移过程中,由于域名解析生效需要一段时间,难免出现部分流量仍然请求到老服务器上的情况,造成数据出现衔 ...
- Nginx 根据不同域名做路由转发
需求 假设现在有一个顶级域名ouou.com和三个二级域名default.ouou.com,blog.ouou.com,white.ouou.com,这4个域名都跟同一个IP进行绑定.三个二级域名分别 ...
- nat服务器性能,iptables的性能问题:用iptables做了web服务器的NAT,速度很慢是何解??...
iptables的性能问题:用iptables做了web服务器的NAT,速度很慢是何解?? (2012-06-06 23:44:08) 标签: 的 web服务器 杂谈 iptables的性能问题:用i ...
- linux访问ftp带端口,使用iptables做端口转发访问ftp
用iptables做端口转发是个很实用的功能,可以让我们忽略协议细节而实现透明转发,对于加密的数据传输更是好用. ftp协议不同于http协议,因为ftp的控制端口和数据端口是分离的,在被动模式下,数 ...
- iptables实现路由转发
一.SNAT应用于局域网共享上网的接入 1.开启网关服务器的路由转发 #vi /etc/sysctl.conf net.ipv4.ip_forward = 1 #sysctl -p 2.设置转发脚本 ...
- CentOS7.2(单网卡iptables)做DNAT访问弹性IP地址端口转发到后端无公网IP的服务器不同端口
通过访问有公网IP的主机(192.168.5.221)的13306端口转发到无公网IP的主机192.168.5.94的80端口 环境准备 无弹性IP的主机,和有弹性IP的centos7.4为 同一个V ...
- CentOS 7 下用 firewall-cmd / iptables 实现 NAT 转发供内网服务器联网
自从用 HAProxy 对服务器做了负载均衡以后,感觉后端服务器真的没必要再配置并占用公网IP资源. 而且由于托管服务器的公网 IP 资源是固定的,想上 Keepalived 的话,需要挤出来 3 个 ...
- 树莓派4b乌班图服务器系统,【树莓派4B】8、树莓派软路由,Ubuntu18.04配置路由转发...
个人目的是经过把树莓派作成一个软路由,至关于一个智能路由器.html 材料 树莓派4B,操做系统其实能够是其余的Linux版本.觉得4B自带无线网卡,就用自带无线网卡做为路由出口.个人系统是Ubunt ...
- linux下用iptables做本机端口转发方法(转载)
一 :从一台机到另一台机端口转发 启用网卡转发功能 #echo 1 > /proc/sys/net/ipv4/ip_forward 举例:从192.168.0.132:21521(新端口)访问1 ...
最新文章
- c#读取excel两列数据并绘制xy曲线_EXCEL绘制三Y轴图表
- 【物理方程】物理学中最难的方程之一,你知道多少?
- 使用 NCS2 异步推理——人脸识别
- Ubuntu 9.0 下之HBase 0.90.4 的安装和使用
- Adobe Audition录制音频与剪辑
- Java代码实现执行HTTP请求
- boost::iostreams::back_inserter用法的测试程序
- webpack最简单的入门教程里bundle.js之运行单步调试的原理解析
- 找一个程序员当男朋友是什么样的体验?
- Bootstrap开篇理解:
- 服务器开机后显示f1 f2,电脑开机总是提示按f1 f2问题的解决办法
- Effective JavaScript Item 37 认识this的隐式指向
- 世界上最成熟、功能最全的加密库HELib
- Anagrams by Stack(进栈出栈问题)
- ERP物料信息编码体系的研究与实践
- PNAS | 富含亮氨酸重复序列延伸蛋白调节拟南芥耐盐性
- Android USB串口摄像头实现拍照与识别二维码
- 爬点今日头条街拍美女。。。
- Problem F: 求三角形面积-gyy
- matlab 绘图与动画制作
热门文章
- Boost:BOOST_VERIFY扩展的用法测试程序
- DCMTK:解压缩RLE压缩的DICOM文件
- Qt Creator 创建优化的3D场景
- OpenGL 统一变量uniform
- c++ 读取数字,直到输入非数字字符为止的算法(附完整源码)
- C++利用双哈希表实现存储机制hash table的算法(附完整源码)
- stl中unordered_map 和 map的区别 ?
- QML基础类型之url
- Git环境搭建与基本使用方法 (转自http://blog.csdn.net/fireelement/article/details/9618363)
- 游戏外挂技术:编程实现内存检索(检索内存中指定数据)