NAT网络地址转换

目录

什么是nat

nat

实验如何使用SNAT  和  DNAT

实验环境   内网连接外网   

1.给网关服务器添加网卡(两张网卡)

2.查看新添加的网卡名  编辑网卡配置

3.开启路由转发

4.打开内网服务器

5.切换到外网服务器(192.168.17.30)

回到网卡服务器ping 外网和内网测试是否连通

添加规则SNAT

打开外网服务器

外网连接内网


什么是nat

NAT(Network Address Translation)是指网络地址转换,这是一种将私有IP地址转换为公共IP地址的技术。它使得在专用网内部的一些主机可以使用本地IP地址(仅在本专用网内使用的专用地址)与因特网上的主机进行通信,无需进行加密。NAT技术需要在专用网(私网IP)连接到因特网(公网IP)的路由器上安装NAT软件,装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全球IP地址(公网IP地址)。所有使用本地地址(私网IP地址)的主机在和外界通信时,都要在NAT路由器上将其本地地址转换成全球IP地址,才能和因特网连接。

nat

1.snat:让内网可以访问外网

2.dnat:让外网可以访问到内网的机器

网关  服务器 

内核功能

sysctl  -a  列出所有的内核参数  然后grep  过滤可以看到 默认的内核参数

sysctl -a|grep forward

内核参数配置文件

/etc/sysctl.conf

sysctl -p

改完文件后重新生效

实验如何使用SNAT  和  DNAT

实验环境   内网连接外网   

pc1   (内网服务器)192.168.17.55

pc2   (网关服务器)192.168.17.25

pc3   (外网服务器)192.168.17.30

1.给网关服务器添加网卡(两张网卡)

将外网服务器和内网服务器都安装上httpd 软件

2.查看新添加的网卡名  编辑网卡配置

[root@localhost/etc/sysconfig/network-scripts] # cp ifcfg-ens33 ifcfg-ens36

3.开启路由转发

[root@localhost/etc/sysconfig/network-scripts] # sysctl -a|grep ip_forward
#过滤出路由转发
net.ipv4.ip_forward = 0
net.ipv4.ip_forward_use_pmtu = 0

4.打开内网服务器

更改网卡配置

配置完重启服务

5.切换到外网服务器(192.168.17.30)

更改网卡配置文件

重启网卡配置

回到网卡服务器ping 外网和内网测试是否连通

添加规则SNAT

[root@localhost/] # iptables -t nat -A POSTROUTING -s 192.168.17.0/24 -o ens36 -j SNAT --to 12.0.0.1  #将192.168.17网段通过网卡ens36转换成外网ip12.0.0.1

打开外网服务器

[root@localhost~] # tail -f /var/log/httpd/access_log

打开内网服务器   curl 外网服务器

[root@localhost~] # curl 12.0.0.110

外网连接内网

打开内网服务器(192.168.17.55)

实时查看日志文件

[root@localhost~] # tail -f /var/log/httpd/access_log

切换到网卡服务器

[root@localhost/] # iptables -F -t nat #清空nat表的所有规则
[root@localhost/] # iptables -t nat -A PREROUTING -i ens36 -p tcp --dport 80 -d 12.0.0.1 -j DNAT --to 192.168.17.55
#从ens36进来的流量访问的是tcp协议的80端口目的地址是12.0.0.1

切换到外网服务器访问

curl 12.0.0.1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/235281.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SAP_ABAP_编程基础_内表_创建内表 / 填充内表 / 读取内表 /修改和删除内表行 / 内表排序 / 创建顺序表 / 比较内表 / 初始化内表

SAP ABAP 顾问(开发工程师)能力模型_Terry谈企业数字化的博客-CSDN博客文章浏览阅读470次。目标:基于对SAP abap 顾问能力模型的梳理,给一年左右经验的abaper 快速成长为三年经验提供超级燃料!https://blog.csdn.net/j…

写给步入三十的自己,2023年终总结!

前言 古语有云: “二十而立,三十而肆”,而我在二十岁这些年已经有一定的责任感和独立思考了,但是还未步入三十,所以为了之后有一定的胆识和能力,我在今年做了目前能做的准备。 今年已做事件 工作相关 1.拿到了PMP证书…

“最甜港姐”走的与众不同之路

网络图片 媒体最新报道,她被誉为“最甜港姐”,曾是TVB炙手可热的当红花旦,却在最当红的时候选择急流勇退。 她不是退圈去相夫教子,而是读书深造,成为一名专业律师。 前不久,又有消息传出,明年…

Spring RabbitMQ那些事(2-两种方式实现延时消息订阅)

目录 一、序言二、死信交换机和消息TTL实现延迟消息1、死信队列介绍2、代码示例(1) 死信交换机配置(2) 消息生产者(3) 消息消费者 3、测试用例 三、延迟消息交换机实现延迟消息1、安装延时消息插件2、代码示例(1) 延时消息交换机配置(2) 消息生产者(3) 消息消费者 3、测试用例 …

【C++ Primer Plus学习记录】嵌套循环和二维数组

for循环是一种处理数组的工具。下面进一步讨论如何使用嵌套for循环中来处理二维数组。 C没有提供二维数组类型,但是用户可以创建每个元素本身都是数组的数组。例如,假设要存储5个城市在4年间的最高温度,可以这样声明数组: int m…

Intellij IDEA 的安装和使用以及配置

IDE有很多种,常见的Eclipse、MyEclipse、Intellij IDEA、JBuilder、NetBeans等。但是这些IDE中目前比较火的是Intellij IDEA(以下简称IDEA),被众多Java程序员视为最好用的Java集成开发环境,今天的主题就是IDEA为开发工…

数据库基础教程之数据库的创建(二)

双击打开Navicat,点击:文件-》新建连接-》PostgreSQL 在下图新建连接中输入各参数,然后点击:连接测试,连接成功后再点击确定。 创建数据表   3.1 方法1   3.1.1.双击你的数据库-》双击public-》双击选中表-》右键-》新建表-》常规 3.1.2.设置字段信息   双击选中创建…

Python之Appium 2自动化测试(Android篇)

一、环境搭建及准备工作 1、Appium 2 环境搭建 请参考另一篇文章: Windows系统搭建Appium 2 和 Appium Inspector 环境 2、安装 Appium-Python-Client,版本要求3.0及以上 pip install Appium-Python-ClientVersion: 3.1.03、手机连接电脑,并在dos窗口…

2021年8月16日 Go生态洞察:Go 1.17版本的发布及其影响

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

园区智能配电系统(电力智能监控系统)

园区智能配电系统是一种针对园区电力配送和管理的智能化系统。它的主要功能是实时监控设备运行情况,进行电能质量分析,监控电能损耗,以及分时段用电统计等。 具体来说,园区智能配电系统可以利用现代技术如RS-485总线通信、数据库管…

XXL-Job详解(一):组件架构

目录 XXL-Job特性系统组成架构图调度模块剖析任务 “运行模式” 剖析执行器 XXL-Job XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 特性 1、简单&#…

JAVEE初阶 多线程基础(四)

线程安全 一.线程安全存在的问题二.锁三.关于锁的理解四.关于锁操作混淆的理解4.1两个线程是否对同一对象加锁 一.线程安全存在的问题 为什么这里的count不是一百万呢?这就是线程所存在的不安全的问题,由于线程是抢占式执行,同时执行count,操作本质是三个指令 1.load 读取内存…