目的:实现以下效果

一、 准备环境

@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. Shell书籍推荐

    1.鸟哥私房菜 2.<Linux命令行与shell脚本编程大全>         第二本书买了,对于初学者来说一般.

  2. css 样式渲染

     1.文字过长时,自动换行

  3. java引用数据类型在方法中的值传递

    package org.jimmy.autosearch20180821.test; public class TestStringArr { public static void main(Stri ...

  4. Drop和Truncate与Delete的区别

    1.Drop DROP TABLE test; 删除表test,并释放空间,将test删除的一干二净.(结构也被完全删除) 2.Truncate TRUNCATE test; 删除表test里的内容, ...

  5. 网络共享服务器 samba

    之前给自己centos 服务器配置了一下samba网络共享,主要是在windwos上编程,然后方便代码同步到linux上进行编译,现在大概记录一下过程,免得下次又忘记了 首先获取root权限 :su ...

  6. centos6基础优化

    一.关闭SELinux功能 selinux功能太严苛,还是关闭了吧 法一:修改配置文件,永久生效 [root@web01 ~]# sed -i 's/SELINUX=enforcing/SELINUX ...

  7. LeetCode(60) Permutation Sequence

    题目 The set [1,2,3,-,n] contains a total of n! unique permutations. By listing and labeling all of th ...

  8. python接口测试之序列化与反序列化(四)

    在python中,序列化可以理解为:把python的对象编码转换为json格式的字符串,反序列化可以理解为:把json格式 字符串解码为python数据对象.在python的标准库中,专门提供了jso ...

  9. MVC系统学习7—Action的选择过程

    在Mvc源码的ControllerActionInvoker的InvokeAction方法里面有一个FindAction方法,FindAction方法在ControllerDescriptor里面定义 ...

  10. hdu 4431 绝对值之和最小公式

    /* 普通的二分不好写,反正我没写出来,这题核心需要求出绝对值最小公式 sum=|x+10|+|x+5|+|x+1|+|x-2|+|x-6|;sumx[1]=-10;sumx[2]=-15;sumx[ ...