当前位置: 首页 > news >正文

iptables防火墙之SNAT与DNAT

1. SNAT

SNAT 应用环境:局域网主机共享单个公网IP地址接入Internet (私有IP不能在Internet中正常路由) SNAT原理:源地址转换,根据指定条件修改数据包的源IP地址,通常被叫做源映射。

数据包从内网发送到公网时,SNAT会把数据包的源IP由私网IP转换成公网IP

当响应的数据包从公网发送到内网时,会把数据包的目的IP由公网IP转换为私网IP

2. SNAT转换前提条件

1.局域网各主机已正确设置IP地址、子网掩码、默认网关地址。

2.Linux网关开启IP路由转发,linxu系统本身是没有转发功能,只有路由发送数据。

3.开启SNAT命令

临时打开:

echo 1 > /proc/sys/net/ipv4/ip_forward
或
sysctl -W net.ipv4.ip_forward=1

永久打开:

vim /etc/sysctl.conf
net.ipv4.ip_forward = 1    #将此行写入配置文件sysctl -p  #读取修改后的配置

4. SNAT转换

iptables -t nat -A POSTROUTING -s 192.168.66.0/24 -o ens33 -i SNAT --to 12.0.0.1
或
iptables -t nat -A POSTROUTING -s 192.168.66.0/24 -o ens33 -j SNAT --to-source 12.0.0.1-12.0.0.10内网IP	出站  外网网卡				外网或地址池

4.1 实验步骤

网关服务器设置

添加一张外网网卡网段为12.0.0.0/24

真机设置为同一个网段

配置内网网卡ens33 

下载httpd

修改网卡,并重启网络。

该文件后重新生效

内网服务器设置

(只要把网关改成网关服务器的ip地址就可以了)

外网服务器设置

5. DNAT 转换

清空iptables规则后在之前的基础上重新添加规则:

使用外网服务器curl

日志显示

6. 总结

从定义上讲,SNAT是原地址转换,DNAT是目标地址转换。区分这两个功能可以简单的由服务的发起者是谁来区分,内部地址要访问公网上的服务时,内部地址会主动发起连接,将内部地址转换成公有ip。

相关文章:

iptables防火墙之SNAT与DNAT

1. SNAT SNAT 应用环境:局域网主机共享单个公网IP地址接入Internet (私有IP不能在Internet中正常路由) SNAT原理:源地址转换,根据指定条件修改数据包的源IP地址,通常被叫做源映射。 数据包从内网发送到公网时,SNAT会把数据包的源IP由私网IP…...

Python与设计模式--命令模式

23种计模式之 前言 (5)单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、(11)策略模式、责任链模式、命令模式、中介者模…...

uni-app 自带返回方法onBackPress,返回上一级并且刷新页面内容获取最新的数据

onBackPress 返回上一级并且刷新页面内容获取最新的数据 onBackPress 方法是uinapp自带返回键方法,也就是在app和H5返回键 onBackPress() {setTimeout(() > {uni.switchTab({url: /pages/Users/index,})}, 300)return true}, methods: {}在这里 uni.switchTab…...

python用YOLOv8对图片进行分类

用yolov8的模型进行分类 先上效果图 图片资源 模型下载地址 https://github.com/ultralytics/ultralytics 代码 import matplotlib.pyplot as plt from ultralytics import YOLO from PIL import Image import cv2model YOLO(../ultralytics/yolov8n.pt)# print(model…...

Spring中@DependsOn 使用详解

一、注解源码 Target({ElementType.TYPE, ElementType.METHOD}) Retention(RetentionPolicy.RUNTIME) Documented public interface DependsOn {String[] value() default {}; } 二、基础概念 DependsOn是Spring框架用来指定bean之间依赖关系的注解之一,即可用户类…...

android笔记 SELinux

1.SELinux解错步骤 log信息: 11-20 02:25:12.526 8976 8976 W om.jzzh.setting: type1400 audit(0.0:1316): avc: denied { write } for name"com.jzzh.setting-IWLR9dkz8TWizbNujdTpWw" dev"mmcblk2p15" ino2661 scontextu:r:system_app:s0…...

vue3 keep-alive页面切换报错:parentComponent.ctx.deactivate is not a function

问题&#xff1a; <router-view v-slot"{ Component }"><keep-alive ><component :is"Component" v-if"$route.meta.keepAlive" /></keep-alive><component :is"Component" v-if"!$route.meta.keepA…...

prompt提示

用例生成 # 任务描述 作为一个高级c程序员&#xff0c;需要完成下列功能的gtest测试用例 # 功能描述 给定两个数字型字符串s1和s2,求和&#xff0c;返回值也是字符串 # 接口举例 调用strAdd("123", "132"),输出“255” # 输出要求 - 入参为空串、nu…...

边缘计算网关:智能制造的“智慧大脑”

一、智能制造的崛起 随着科技的飞速发展&#xff0c;智能制造已经成为了制造业的新趋势。智能制造不仅能够提高生产效率&#xff0c;降低生产成本&#xff0c;还能够实现个性化定制&#xff0c;满足消费者多样化的需求。然而&#xff0c;智能制造的实现离不开大量的数据处理和分…...

HNCTF2022Week1 Reverse WP

文章目录 [HNCTF 2022 Week1]超级签到[HNCTF 2022 Week1]贝斯是什么乐器啊&#xff1f;[HNCTF 2022 Week1]X0r[HNCTF 2022 Week1]你知道什么是Py嘛&#xff1f;[HNCTF 2022 Week1]CrackMe[HNCTF 2022 Week1]给阿姨倒一杯Jvav[HNCTF 2022 Week1]Little EndianNSSCTF{Littl3_Endi…...

基于Python的面向对象分类实例Ⅱ

接上一部分继续介绍~ 一、地类矢量转栅格 这一步是为了能让地类值和影像的对象落在同一区域&#xff0c;从而将影像中的分割对象同化为实际地物类别。 train_fn r".\train_data1.shp" train_ds ogr.Open(train_fn) lyr train_ds.GetLayer() driver gdal.GetDrive…...

android手机莫名其妙卸载重装有残留数据

参考文档&#xff1a; https://developer.android.com/guide/topics/data/autobackup?hlzh-cn https://developer.android.com/about/versions/12/backup-restore#xml-changes https://stackoverflow.com/questions/70365809/how-to-specify-to-not-allow-any-data-backup-wit…...

【YOLOv5入门】目标检测

【大家好&#xff0c;我是爱干饭的猿&#xff0c;本文重点介绍YOLOv5入门-目标检测的任务、性能指标、yolo算法基本思想、yolov5网络架构图。 后续会继续分享其他重要知识点总结&#xff0c;如果喜欢这篇文章&#xff0c;点个赞&#x1f44d;&#xff0c;关注一下吧】 上一篇…...

可验证随机函数(VRF)

文章目录 一、背景以及场景共识发展第一代 POW “以力取胜”第二代 POS/DPOS “民主投票”第三代 VRF “运气抽签” 二、可验证随机函数&#xff08;VRF&#xff09;快速开始1. VRF是什么?2. MD5 hash函数和VRF&#xff08;Verifiable Random Function&#xff09;区别3. VRF-…...

Node.js与npm的准备与操作

1.下载 Node.js官网&#xff1a;Node.jsNode.js is a JavaScript runtime built on Chromes V8 JavaScript engine.https://nodejs.org/en 打开后的界面如下&#xff1a; LTS&#xff08;Long Term Support&#xff09;&#xff1a;长期支持版&#xff0c;稳定版 Current&am…...

ui设计师简历自我评价的范文(合集)

ui设计师简历自我评价的范文篇一 本人毕业于艺术设计专业&#xff0c;具有较高的艺术素养&#xff0c;平时注重设计理论知识的积累&#xff0c;并将理论应用到作品中。了解当下设计的流行趋势&#xff0c;设计注重细节、重视用户体验&#xff0c;对色彩搭配有着浓厚的兴趣&…...

sqli-labs靶场详解(less32-less37)

宽字节注入 原理在下方 目录 less-32 less-33 less-34 less-35 less-36 less-37 less-32 正常页面 ?id1 下面有提示 获取到了Hint: The Query String you input is escaped as : 1\ ?id1 看来是把参数中的非法字符就加上了转义 从而在数据库中只能把单引号当成普通的字…...

如何保证缓存和数据库的双写一致性?

一、什么是数据库和缓存双写一致性&#xff1f; 在分布式系统中&#xff0c;数据库和缓存会搭配一起使用&#xff0c;以此来保证程序的整体查询性能。也就说&#xff0c;分布式系统为了缓解数据库查询的压力&#xff0c;会将查出来的数据保存在缓存中&#xff0c;下次再查询时…...

Rosbag 制作 TUM数据集

Rosbag 制作 TUM数据集 一、创建rgb和depth文件夹和txt文件 mkdir rgb mkdir depth touch rgb.txt touch depth.txt 二、替换 bag 路径 和 topic tum.py&#xff1a; import os import cv2 import numpy as np import rosbag from sensor_msgs.msg import Image from cv_b…...

本地websocket服务端暴露至公网访问【cpolar内网穿透】

本地websocket服务端暴露至公网访问【cpolar内网穿透】 文章目录 本地websocket服务端暴露至公网访问【cpolar内网穿透】1. Java 服务端demo环境2. 在pom文件引入第三包封装的netty框架maven坐标3. 创建服务端,以接口模式调用,方便外部调用4. 启动服务,出现以下信息表示启动成功…...

AI Agent Harness多租户数据隔离

AI Agent Harness多租户数据隔离:构建企业级智能协作平台的安全基石 1. 引入与连接:从一场云端智能客服泄露事故谈起 核心概念: AI Agent(智能代理):具备自主感知、推理决策、行动执行能力的软件实体,可代表个人/组织完成特定任务,是当前大模型应用落地的核心载体 AI …...

Poppins字体:终极多语言开源字体解决方案,9种字重+天城文支持

Poppins字体&#xff1a;终极多语言开源字体解决方案&#xff0c;9种字重天城文支持 【免费下载链接】Poppins Poppins, a Devanagari Latin family for Google Fonts. 项目地址: https://gitcode.com/gh_mirrors/po/Poppins 还在为多语言项目寻找完美的字体解决方案吗…...

因果机器学习在制造业返工决策中的应用:以白光LED产线为例

1. 项目概述&#xff1a;当因果推断遇上产线返工在制造业&#xff0c;尤其是像白光LED芯片制造这样的精密流程工业里&#xff0c;每天都有成千上万个生产批次&#xff08;Lot&#xff09;在产线上流转。每个批次在经过磷光体转换&#xff08;Color Conversion&#xff09;这一关…...

7种计时模式+智能联动:OBS高级计时器插件让你的直播时间管理更高效

7种计时模式智能联动&#xff1a;OBS高级计时器插件让你的直播时间管理更高效 【免费下载链接】obs-advanced-timer 项目地址: https://gitcode.com/gh_mirrors/ob/obs-advanced-timer 还在为直播中的时间管理而烦恼吗&#xff1f;无论是新手主播还是经验丰富的内容创作…...

利用Taotoken多模型广场为不同业务场景选择最优模型

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 利用Taotoken多模型广场为不同业务场景选择最优模型 当你的产品需要集成AI能力时&#xff0c;面对市场上众多的模型提供商和复杂的…...

Windows上的安卓应用安装神器:APK-Installer完全指南

Windows上的安卓应用安装神器&#xff1a;APK-Installer完全指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 想在Windows电脑上轻松安装安卓应用&#xff0c;又不想…...

MinIO集群敏感信息泄露漏洞CVE-2023-28432深度解析

1. 这个漏洞不是“配置没关好”&#xff0c;而是MinIO架构里埋着的定时炸弹MinIO集群模式下的敏感信息泄露漏洞&#xff08;CVE-2023-28432&#xff09;——光看标题&#xff0c;很多人第一反应是&#xff1a;“哦&#xff0c;又一个管理员忘了关调试接口&#xff1f;”我最初也…...

体验Taotoken多模型路由能力在不同负载下的稳定性表现

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 体验Taotoken多模型路由能力在不同负载下的稳定性表现 在将大模型能力集成到实际业务时&#xff0c;服务的稳定性与响应速度是开发…...

30+个Illustrator脚本解放你的设计时间:告别重复劳动的艺术

30个Illustrator脚本解放你的设计时间&#xff1a;告别重复劳动的艺术 【免费下载链接】illustrator-scripts Adobe Illustrator scripts 项目地址: https://gitcode.com/gh_mirrors/il/illustrator-scripts Adobe Illustrator是设计师的必备工具&#xff0c;但重复性操…...

3步解锁:开源工具Applera1n完全指南——iOS 15-16激活锁绕过方案

3步解锁&#xff1a;开源工具Applera1n完全指南——iOS 15-16激活锁绕过方案 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n Applera1n是一款专为iOS 15-16系统设计的免费开源激活锁绕过工具&#xff…...