原文请见:http://os.51cto.com/art/201109/289486.htm

本文将介绍一个使用iptables实现NAT转发功能的案例。

本文案例中,我们假设有一家ISP提供园区Internet接入服务,为了方便管理,该ISP分配给园区用户的IP地址都是私网IP,通过该私网IP用户无法向外发布信息。但是,部分用户要求建立自己的WWW服务器对外发布信息。

我们可以在防火墙的外部网卡上绑定多个合法IP地址,然后通过ip映射使发给其中某一个IP地址的包转发至内部某一用户的WWW服务器上,然后再将该内部WWW服务器响应包伪装成该合法IP发出的包。

具体的IP分配如下:

(1)该ISP分配给A单位www服务器的IP为:

私网ip:172.168.92.100

公网ip:210.95.33.100

(2)该ISP分配给B单位www服务器的IP为:

私网ip:172.168.92.200

公网ip:210.95.33.200

(3)Linux防火墙的IP地址分别为:

内网接口eth1:172.168.92.10

外网接口eth0:210.95.33.1

然后,我们需要进行如下步骤地操作:

(1)将分配给A、B单位的真实ip绑定到防火墙的外网接口,以root权限执行以下命令:

#ifconfig eth0 add 210.95.33.100 netmask 255.255.255.0
#ifconfig eth0 add 210.95.33.200 netmask 255.255.255.0

(2)成功升级内核后安装iptables,然后执行以下脚本载入相关模块:

modprobe ip_tables
modprobe ip_nat_ftp

(3)对防火墙接收到的目的ip为210.95.33.100和210.95.33.200的所有数据包进行目的NAT(DNAT):

#iptables -A PREROUTING -i eth0 -d 210.95.33.100 -j DNAT --to 172.168.92.100
#iptables -A PREROUTING -i eth0 -d 210.95.33.200 -j DNAT --to 172.168.92.200

(4)对防火墙接收到的源ip地址为172.168.92.100和172.168.92.200的数据包进行源NAT(SNAT):

#iptables -A POSTROUTING -o eth0 -s 172.168.92.100 -j SNAT --to 210.95.33.100
#iptables -A POSTROUTING -o eth0 -s 172.168.92.200 -j SNAT --to 210.95.33.200

这样,所有目的ip为210.95.33.100和210.95.33.200的数据包都将分别被转发给172.168.92.100和172.168.92.200;而所有来自172.168.92.100和172.168.92.200的数据包都将分别被伪装成由210.95.33.100和210.95.33.200,从而也就实现了ip映射。

转载于:https://blog.51cto.com/patterson/676919

iptables实战系列:通过NAT转发实现私网对外发布信息相关推荐

  1. 通过NAT转发实现私网对外发布信息

    我们可以在防火墙的外部网卡上绑定多个合法IP地址,然后通过ip映射使发给其中某一个IP地址的包转发至内部某一用户的WWW服务器上,然后再将该内部WWW服务器响应包伪装成该合法IP发出的包. 具体的IP ...

  2. CentOS 7 下用 firewall-cmd / iptables 实现 NAT 转发供内网服务器联网

    自从用 HAProxy 对服务器做了负载均衡以后,感觉后端服务器真的没必要再配置并占用公网IP资源. 而且由于托管服务器的公网 IP 资源是固定的,想上 Keepalived 的话,需要挤出来 3 个 ...

  3. 爬虫实战系列!淘宝店铺各品牌手机售卖信息爬取及可视化!

    声明:本博客只是简单的爬虫示范,并不涉及任何商业用途. 一.前言 最近博主在浏览淘宝时突然萌发了一个想爬它的念头,于是说干就干,我便开始向淘宝"下毒手"了.由于本人平时经常喜欢在淘 ...

  4. 抖音短视频数据抓取实战系列(九)——自动化Appium的环境与参数配置

    抖音短视频数据抓取实战系列(九)--自动化Appium的环境与参数配置 项目目录 1.抖音短视频数据抓取实战系列(〇)--前言 2.抖音短视频数据抓取实战系列(一)--模拟器的选择与设置 3.抖音短视 ...

  5. hbase实战 与mysql_HBase实战系列1—压缩与编码技术

    1.hbase压缩与编码的配置 安装LZO 解决方案: 1)apt-get install liblzo2-dev 2)hadoop-gpl-compression-0.2.0-dev.jar 放入c ...

  6. 抖音短视频数据抓取实战系列(〇)——前言

    前言: 博主因为项目需要抓取大量的用户信息,所以便开始在网上搜素有没有什么监测数据的方法,博主查到了两种,1.fiddler监测和2.Mitmproxy监测,通过对两者的不断研究实验,博主得出了一下对 ...

  7. 抖音短视频数据抓取实战系列(三)——Fiddler抓取抖音用户详细信息数据

    抖音短视频数据抓取实战系列(三)--Fiddler抓取抖音用户详细信息数据 项目目录 1.抖音短视频数据抓取实战系列(〇)--前言 2.抖音短视频数据抓取实战系列(一)--模拟器的选择与设置 3.抖音 ...

  8. 抖音短视频数据抓取实战系列(二)——Fiddler安装配置以及模拟器监测环境配置

    抖音短视频数据抓取实战系列(二)--Fiddler安装配置以及模拟器监测环境配置 项目目录 1.抖音短视频数据抓取实战系列(〇)--前言 2.抖音短视频数据抓取实战系列(一)--模拟器的选择与设置 3 ...

  9. 抖音短视频数据抓取实战系列(十)——获取抖音dom元素属性

    抖音短视频数据抓取实战系列(十)--获取抖音dom元素属性 项目目录 1.抖音短视频数据抓取实战系列(〇)--前言 2.抖音短视频数据抓取实战系列(一)--模拟器的选择与设置 3.抖音短视频数据抓取实 ...

  10. 抖音短视频数据抓取实战系列(十二)——抓取实战BUG总集

    抖音短视频数据抓取实战系列(十二)--抓取实战BUG总集 1.模拟器自带的Xposed框架无法安装. 2.Fiddler无法监测雷电模拟器上的数据. 3.模拟器抖音用户详情页为空(未解决). 4.pi ...

最新文章

  1. 安卓获取浏览器上网记录_Android 获取浏览器当前分享页面的截屏示例
  2. Python培训入门基础知识学什么?
  3. UCloud想吃科创板的“第一个螃蟹”
  4. GM6 1.38.1 start up debug - share memory
  5. ES6学习笔记(一):轻松搞懂面向对象编程、类和对象
  6. Intel超线程技术 Hyper-Threading Technology (1) - 引言与历史
  7. java 变量 类之间调用_java内部类与其他类变量之间的调用方式
  8. Android自动挂断电话
  9. ERP项目学习(一)
  10. 蓝桥杯最后一天复习?各大算法四步法教你轻松秒杀各种题型
  11. 保存网页html 有什么,保存网页时HTML和MHTML区别在哪里
  12. 拳王虚拟项目公社:2020已过半,请不要再混日子了!
  13. manjaro配置输入法
  14. Wishbone总线快速了解
  15. C++初步之核心编程篇五:多态与虚函数类
  16. [UE4笔记] 根据日期判断该天是周几
  17. 数据的存储结构有哪些?
  18. 致远SPM解决方案之安全管理
  19. android framework学习回忆
  20. 2.2 法学的历史(二):中国法学的历史

热门文章

  1. python中read() readline()以及readlines()用法
  2. dos初始操作和全屏方法
  3. 如何用hypermesh生成包含interface的流体网格
  4. 又议android中的manifest清单文件
  5. grub4dos初级教程-入门篇(Z)
  6. asp.net安全身份验证
  7. 安装Ubuntu的那些事儿(续)
  8. protobuf(Protocol Buffers)java初体验
  9. copy 回顾总结:Java中抽象类与抽象方法
  10. Apisonic Labs Speedrum Mac - MPC风格虚拟鼓采样器