SNAT,DNAT,端口转发

利用iptables配置NAT

实验准备

实验拓扑图:

1

一、SNAT

三台服务器:lan、router、internet

 配置内网lan

1.配置内网IP地址

禁用外网地址ifconfig eth1 down

2.查看路由信息

2

3.增加一条路由指向路由器  3  、配置       配置路由器

1.检查路由转发功能

sysctl -a |grep ip_for

若:net.ipv4.ip_forward=1,就说明具有路由转发功能

若:net.ipv4.ip_forward=0,就说明不具有转发功能,需要修改文件:

echo net.ipv4.ip_forward=1 >>/etc/sysctl.conf

sysctl -p  生效该文件

4

使用192.168.42.131 ping 172.18.42.8 不能Ping 通

在172.18.42.8主机上抓包  tcpdump -i eth1 host 192.168.42.131,只有请求包,没有回复包5

2.配置NAT

iptables -t nat -A POSTROUTING -s 192.168.42.0/24 ! -d 192.168.42.0/24 -j SNAT –to-source                      172.18.42.7

6

7

使用192.168.42.131 ping 172.18.42.8

8

抓包

9

    检测

1.在外网internet上安装个Httpd服务

yum install httpd

echo www.baidu.com >/var/www/html/index.html

10

2.在内网lan中访问

11

二、DNAT

1.在内网上安装个Httpd 便于观察实验结果

12

2.配置路由器

iptables -t nat -A PREROUTING -d 172.18.42.7 -p tcp –dport 80 -j DNAT –to-destination                               192.168.42.13113

3.在外网internet上查看

14

三、端口转发

端口转发是发生在一台服务器上的,拿内网lan为类

开始用192.168.42.133访问192.168.42.131上的httpd服务

192.168.42.133是用curl 192.168.42.131

15

1.修改192.168.42.131上的httpd的端口:

16

1718

重启服务

2.在用192.168.42.133访问192.168.42.131上的httpd服务

19

20

3.在192.168.42.131上配置端口转发

iptables -t nat -A PREROUTING -d 192.168.42.131 -p tcp –dport 80 -j REDIRECT –to-port 10086

21

再次访问

22

 

 

 

 

 

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/91820

(0)
zss123456zss123456
上一篇 2018-03-01 14:39
下一篇 2018-03-01 17:56

相关推荐

  • Linux syslog 系统日志管理

    Linux系统上面,系统可以记录从开机到当前系统上面何时发生了哪些事情,在centos 上表现为rsylog,由三部分组成 1)syslogd:主要记录系统和网络等服务的日志信息 2)klogd:主要记录内核产生的各项信息 3)logretate:主要用来对日志文件进行切割循环记录等 特点: 1)多线程工作 2)支持以TCP,UDP,SSL,TSL,RELP…

    Linux干货 2016-10-24
  • linux 常用命令

    linux   常用命令:      pwd: printing working directory                     显示工作目录       cd:cha…

    Linux干货 2016-10-28
  • 全球敏捷运维峰会Gdevops 2017成都站嘉宾主题提前看!

    2017年全球敏捷运维峰会(Gdevops, Global Devops Summit)将于2017年在成都、上海、北京、广州四城全面启动,本次峰会由上海市经济和信息化委员会指导,上海市云计算产业促进中心、DBAplus社群主办,数十家媒体单位共同支持,活动家提供全球敏捷运维峰会在线报名服务。 成都站即将于13日启航,搭车地址:https://www.huo…

    Linux干货 2017-05-11
  • 网络管理基础

    什么是网络?    在计算机领域中,网络是信息传输,接受,共享的虚拟平台,通过它把各个点,面体的信息联系到一起, 从而实现这些资源的共享。 网路物理组件     终端:可发送和接受数据的,如计算机。移动设备,打印机,服务器….    互联设备:互联…

    Linux干货 2016-09-06
  • Shell脚本基础练习

    脚本编程能力是作为运维工程师不可或缺的一项基本技能,各种系统的运维,如果完全靠命令行一条一条命令来执行,工作效率可想而知,而脚本却可以将完成一定功能的各个命令依据一定的流程控制,逻辑判断去完成某种功能,提升工作效率。学习shell脚本,光学习理论是远远不够的,所以在学习中要多多练习,下面就看一些关于shell脚本基础的练习 (1) 编写脚本/root/bin…

    2017-08-05
  • 磁盘管理之磁盘分区,主引导分区表修复

    磁盘管理: I/O Ports: I/O设备地址 一切皆文件: open(), read(), write(), close() 设备类型: 块设备:block,存取单位“块”,磁盘 字符设备:char,存取单位“字符”,键盘 设备文件:关联至一个设备驱动程序,进而能够跟与之对应硬件设备进行通信 设备号码: 主设备号:major number, 标识设备类型…

    Linux干货 2016-08-25