目的:实现以下效果

一、 准备环境

@1 三台虚拟机

@2  client 端 ip  192.168.1.2      server端   两块网卡 , ip 分别是 192.168.1.1   和  172.16.100.1  web端 ip 为 172.16.100.3

注:虚拟机添加网卡后没显示配置文件,需要自己手动编辑一个配置文件

二,部署环境

1> 这时会发现,用client 端去ping web 端时ping 不通的,如下

这是因为  server端相当于client端与web 端的桥梁, server端的路由转发功能没有开启

注: 路由转发 是一个内核参数如下

0 表示未开启, 那么如何将它开启呢,下面是一种临时开启的方法

1 表示开启,这样路由转发就临时开启了,我们来测试一下能否ping通

client  端 通过  server 端的 路由转发成功的  ping 通了 web 端

#上述方法是临时 开启路由转换功能,那么想要永久开启呢?需要写入  /etc/sysctl.conf  这个配置文件里面如下

#1写入

#2 生效

#查看

!成功

注:这是模拟实验,真实环境下是不允许client 端直接去访问 web 端主机的

三、试验

1>NAT 功能  可以在PREROUTING(DNAT),OUTPUT,INPUT,POSTROUTING(SNAT) 这四个链上来实现,因server端开启了路由转发功能,所以实际上是只经过  PREROUTING(DNAT),POSTROUTING(SNAT) FORWARD  这三个链

@1  开始web 端的 httpd 服务

@2 测试下 client 能否访问 web 端的  网站

@3 用web 端 查看下http的访问日志

@4  有记录

注意此时是 client i端 ip 访问的 。

现在开始进行网络地址转换

2>.(server端)需要在 NAT 表上添加规则 ,注:网路地址转换,DNAT 访问的时候需要在  PREROUTING 链上 进行网络地址转换 ;SNAT 出去的时候需要在POSTROUTING 上 进行网络地址转换

命令:iptables -t NAT -A POSTROUTING -s 192.168.1.2 -d 172.16.100.222 -j SNAT --to-source 172.168.100.1

3>  查看下  NAT 表

4>client 端再访问一下 web端的网站 ; 命令 curl  http:// 172.16.100.222

5> 在web端 查看  httpd 的访问日志

client端 访问 web 端时 ip 被转换成了 172.16.100.1

注: 在真实环境下,一般都需要进行网络地址转换,毕竟  client 端不能直接 访问 web端的网站

$$2  DNAT

(实际是上访问server端,server端没有httpd服务,通过网络地址转换去找  client 端)

1>开启client 端的 httpd 服务

2>命令 :

3>查看

4>抓取

访问的server端 抓取的却是client端 (目标地址转换 DNT)

firewalld 防火墙 nat 网络地址转换的更多相关文章

  1. CCNA学习 NAT网络地址转换

    CCNA基础 NAT网络地址转换 在计算机网络中,网络地址转换(Network Address Translation,缩写为NAT),也叫做网络掩蔽或者IP掩蔽(IP masquerading),是 ...

  2. TCP/IP 笔记 - 防火墙和网络地址转换

    防火墙是位于内部网和外部网之间的屏障,是系统的第一套防线,作用是防止非法用户的进入. 网络地址转换是一种IP数据包通过路由器或防火墙时通过重写来源IP地址或目的地址的技术,可以用来隐藏或保护内部网络, ...

  3. [译] NAT - 网络地址转换(2016)

    [译] NAT - 网络地址转换(2016) Published at 2019-02-17 | Last Update 译者序 本文翻译自 2016 年的一篇英文博客 NAT - Network A ...

  4. NAT 网络地址转换

    NAT  网络地址转换(Network Address Translation) NAT(Network Address Translation,网络地址转换)是1994年提出的. 属接入广域网(WA ...

  5. NAT网络地址转换模拟过程

    原理图,如图1 图1 以下为配置NAT网络地址转换的实验: eNSP模拟图,如图2 图2 Step1.给路由器的每个接口赋予一个地址,如图3,图4 图3 图4 AR1和AR2中添加路由表项,如图5,图 ...

  6. iptables做nat网络地址转换

    iptables做nat网络地址转换. 0. 权威文档 http://www.netfilter.org/documentation/HOWTO/NAT-HOWTO-6.html e文好的直接跳过本文 ...

  7. NAT网络地址转换技术

    NAT网络地址转换技术 目录 一.NAT概述 1.1.概述 1.2.NAT 的应用场景 二.NAT的类型及配置命令 2.1.静态NAT 2.2.动态NAT 2.3.Easy IP 2.4.NATP 2 ...

  8. NAT网络地址转换的原理--笔试答题版

    最早接触NAT是在做网络工程师的时候,NAT是做网络工程师必需会的知识点和技能,后来在面试运维的时候也经常被用到,在运维的某些知识点当中也会被引用到,如LVS当中. 为什么需要NAT(网络地址转换)? ...

  9. NAT—网络地址转换

    参考链接:http://www.qingsword.com/qing/745.html 视频链接: 一.什么是NAT? NAT --- Network Address Translation  也就是 ...

随机推荐

  1. iview构建 初始化的时候不要装ESlint 太烦人了

    iview构建 Node.js Vue(全局安装) npm install -g vue-cli npm install vue-cli 问题:发现如果不全局安装VUE-cli,\n在它初始化的时候, ...

  2. Java IO(三)--字节流基本使用

    I/O流分类: InputStream和Read的子类都有read(),用来读取单个字节或字节数组 OutputStream和write的子类都有write(),用来写入单个字节或字节数组 一般都是通 ...

  3. freenas iscsi initiator 配置

    1.加载Iscsi Initiator 模块 freebsd从7.0开始已经包含了Iscsi Initiator ,不需要安装后再使用,但在使用前,需要加载模块. # kldload -v iscsi ...

  4. 无法完成安装:'Cannot access storage file '/

    今天自己编译了spice-protocol spice-gtk spice qemu,然后想用virsh去创建一个虚机: # virsh define demo.xml     定义域 demo(从 ...

  5. Java中this、static关键字的内存图解

    Java中的关键字有很多,abstract  default  goto*  null  switch  boolean  do  if  package  nchronzed  break  dou ...

  6. SpringMVC+ajax返回JSON串

    一.引言 本文使用springMVC和ajax做的一个小小的demo,实现将JSON对象返回到页面,没有什么技术含量,纯粹是因为最近项目中引入了springMVC框架. 二.入门例子 ①. 建立工程, ...

  7. BZOJ1001 狼抓兔子 平面图转对偶图 最小割

    现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的,而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一个网格的地形: 左上角点为 ...

  8. Visual Studio 2013/2015/2017快捷键(转载)

    本文为转载文章,原文:[心存善念]  [Fonour] 项目相关的快捷键 Ctrl + Shift + B = 生成项目 Ctrl + Alt + L = 显示 Solution Explorer(解 ...

  9. Bootstrap 12 栅格系统

    栅格系统简介 Bootstrap 提供了一套响应式.移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多 12 列.它包含了易于使用的预定义类,还有强大的mix ...

  10. nginx下TP5 隐藏入口文件+支持pathinfo模式+配置多项目根目录

    首先说下项目目录情况  跟目录/usr/share/nginx/html/(别说怎么这么深  0.0) html文件夹下面两个目录 pssh  pssh_shop 两个tp5项目分别对应两个二级域名 ...