DAY 39 SNAT和DNAT技术

这篇具有很好参考价值的文章主要介绍了DAY 39 SNAT和DNAT技术。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SNAT与DNAT概述

当内部地址要访问公网上的服务时(如web访问),内部地址会主动发起连接,由路由器或者防火墙上的网关对内部地址做个地址转换,将内部地址的私有IP转换为公网的公有IP,网关的这个地址转换功能称为SNAT,主要用于内部共享IP访问外部网络

当内部地址需要提供对外服务时(如对外发布web网站),外部地址发起主动连接,由路由器或者防火墙上的网关接收这个连接,然后将连接转换到内部,此过程是由带有公网IP的网关替代内部服务来接收外部的连接,然后在内部将公网IP转换为私网IP,此转换功能称为DNAT,主要用于内部服务对外发布

SNAT

SNAT的典型应用环境:

  • 局域网主机共享单个公网IP地址接入Internet。(私有IP不能在Internet中正常路由)

SNAT策略的原理:

  • 源地址转换,Source Network Address Translation
  • 修改数据包的源地址

SNAT源地址转换过程:

  • 数据包从内网发送到公网时,SNAT会把数据包的源地址由私网IP转换成公网IP。
  • 当相应的数据包从公网发送到内网时,会把数据包的目的地址由公网IP转换为私网IP。
  • 当内网有多台主机访问外网时,SNAT在转换时会自动分配端口,不同内网主机会通过端口号进行区分

SNAT配置

SNAT转换前提条件

  1. 局域网各主机已正确设置IP地址、子网掩码、默认网关地址
  2. Linux网关开启IP路由转发

 Linux网关开启IP路由转发

1、临时开启:

 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     #读取修改后的配置

SNAT转换1:固定公网IP

固定配置SNAT策略,实现SNAT功能,将所有192.168.184.0这个网段内的ip的源地址改为12.0.0.2的公网IP地址

   iptables -t nat -A POSTROUTING -s 192.168.72.0/24 -o ens33 -j SNAT --to 12.0.0.2      
  或  iptables -t nat -A POSTROUTING -s 192.168.72.0/24 -o ens33 -j SNAT --to-source 12.0.0.2-12.0.0.10

#-A POSTROUTING 指定POSTROUTING链 

#-s 192.168.72.0/24 源地址所处的网段(内网IP) 

#-o ens33 出站网卡 

#-j SNAT  #--to 12.0.0.2   外网IP  

#--to-source 12.0.0.2-12.0.0.10   外网地址

SNAT转换2:非固定的公网IP地址(共享动态IP地址)池

iptables -t nat -A POSTROUTING -s 192.168.72.0/24 -o ens33 -j MASQUERADE

DNAT原理及应用

服务器一般不会暴露在公网中,极易被人攻击。服务器一般使用内网IP,所以访问服务器时需要进行目标地址转换。

DNAT策略的原理:

  • 目标地址转换,Destination Network Address Translation
  • 修改数据包的目标地址

DNAT源地址转换过程:

  • 数据包从外网发送到内网时,DNAT会把数据包的目标地址由公网IP转换成私网IP。
  • 当相应的数据包从内网发送到公网时,会把数据包的源地址由私网IP转换为公网IP。
  • 客户机想访问服务器时,访问的是网关地址,由网关去找服务器的内网地址。
  • 如果多台服务器使用同一个网关,那么通过不同的端口号来对应不同的服务器

DNAT的配置

DNAT转换前提条件

  1. 局域网的服务器能够访问Internet

  2. 网关的外网地址有正确的DNS解析记录

  3. Linux网关开启IP路由转发

vim /etc/sysctl.conf  

net.ipv4.ip_forward=1    #将此行写入配置文件  

sysctl -p     #读取修改后的配置

DNAT转换1:发布内网的Web服务

把从ens33进来的要访问web服务的数据包目的地址转换为 192.168.72.10

 iptables -t nat -A PREROUTING -i ens33 -d 12.0.0.254 -p tcp --dport 80 -j DNAT --to 192.168.72.102 
或  iptables -t nat -A PREROUTING -i ens33 -d 12.0.0.254 -p tcp --dport 80 -j DNAT --to 192.168.72.10-192.168.72.20  

#-A PREROUTING       //修改目标地址的链          
#-i ens33             //入站网卡 
#-d 12.0.0.254       //数据包的目的地址 
#-p tcp --dport 80   //数据包的目的端口
#-j DNAT             //使用DNAT功能 
#--to 192.168.109.11 //内网服务器IP

tcpdump—Linux抓包

wireshark 抓包工具只在windows中使用

tcpdump 可以在Linux系统中使用

 tcpdump tcp -i ens33 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap
  • tcp∶ ip、icmp、arp、rarp 和 tcp、udp、icmp这些选项等都要放到第一个参数的位置,用来过滤数据报的类型。*

-i ens33 :只抓经过接口ens33的包。

-t:不显示时间戳

-s 0 :抓取数据包时默认抓取长度为68字节。加上"-s 0"后可以抓到完整的数据包。

-c 100 :只抓取100个数据包。

dst port ! 22 :不抓取目标端口是22的数据包。

src net 192.168.1.0/24 :数据包的源网络地址为192.168.1.0/24。Net:网段,host:主机。

-w ./target.cap ∶ 保存成cap文件,方便用ethereal (即wireshark)分析文章来源地址https://www.toymoban.com/news/detail-418044.html

到了这里,关于DAY 39 SNAT和DNAT技术的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • iptables 防火墙(二)SNAT/DNAT

    目录 一:SNAT原理与应用 1.SNAT介绍 2.SNAT 应用环境 3.SNAT原理 二:SNAT配置 第一步:设置各个端口的网卡   1.先准备客户机、web服务器、网关服务器   2.网关服务器设置 (1)添加网卡 (2)修改ens32 为网关服务器的内网网卡 ​(3)修改新加网卡ens33为外网网卡  3.客户机设置

    2024年02月06日
    浏览(27)
  • iptables、共享上网SNAT、端口转发DNAT

    封端⼝,封ip 实现NAT功能 共享上⽹ 端⼝映射(端⼝转发),ip映射 硬件:整个企业入口 软件:开源软件 网站内部 封ip iptables 云防火墙 安全组 NAT网关 waf应用防火墙 容器、表、链、规则 1.防⽕墙是 层层过滤 的,实际是按照配置规则的 顺序从上到下 ,从前到后进⾏过滤的。 2.如

    2024年02月10日
    浏览(27)
  • Linux系统安全——NAT(SNAT、DNAT)

    目录 NAT SNAT SNAT实际操作 DNAT DNAT实际操作 NAT: network address translation,支持PREROUTING,INPUT,OUTPUT,POSTROUTING四个链 请求报文:修改源/目标IP, 响应报文:修改源/目标IP,根据跟踪机制自动实现 NAT的实现分为下面几种类型: SNAT :source NAT ,支持POSTROUTING, INPUT,让本地网络中的主

    2024年02月11日
    浏览(25)
  • Linux系统安全:NAT(SNAT、DNAT)

    目录 一.NAT 二.SNAT 三.DNAT NAT: network address translation,支持PREROUTING,INPUT,OUTPUT,POSTROUTING四个链 请求报文:修改源/目标IP, 响应报文:修改源/目标IP,根据跟踪机制自动实现 NAT的实现分为下面几种类型: SNAT:source NAT ,支持POSTROUTING, INPUT,让本地网络中的主机通过某一特定

    2024年02月11日
    浏览(24)
  • Linux iptables实现(SNAT)源地址转换以及http访问控制

    一、实现拓扑 二、实验要求                 1、实验要求SNAT:内网主机访问外网主机,通过iptables进行原地址转换,允许访问外网的httpd和ping         2、外网主机访问内网主机的http服务通过iptables进行目的地址(DNAT)转换         3、仅允许内网主机使用ssh远程管

    2024年02月06日
    浏览(35)
  • 基于SNAT+DNAT发布内网K8S及Jenkins+gitlab+Harbor模拟CI/CD的综合项目

    目录 项目名称 项目架构图 项目环境 项目概述 项目准备 项目步骤 一、修改每台主机的ip地址,同时设置永久关闭防火墙和selinux,修改好主机名,在firewalld服务器上开启路由功能并配置snat策略。 1. 在firewalld服务器上配置ip地址、设置永久关闭防火墙和selinux,并修改好主机名

    2024年02月09日
    浏览(40)
  • 计算机网络 day9 DNAT实验

    目录 DNAT DNAT策略的典型应用环境 DNAT策略的原理 在网关中使用DNAT策略发布内网服务器 DNAT实验: 实验环境: DNAT网络规划拓扑图: 步骤: 1、创建linux客户端Web网站(go语言),实现Web服务器 1.1、下载go语言Web端代码 1.2、下载代码后传输到你的linux客户机上去 1.3、解压apiser

    2024年02月16日
    浏览(24)
  • 计算机网络 day10 DNAT问题 - 堡垒机 - WLAN

    目录 DNAT策略拓扑图:  问题一:当我们访问内网的Web服务的时候,我们防火墙服务器的80端口和Web服务器的8000端口是否需要一直调用程序监控呢? DNAT的作用就是可以帮助我们进行路由转发功能 问题二:当我们在继续DNAT实验的时候,Web服务器和firewall网关服务器的LAN口都采

    2024年02月17日
    浏览(22)
  • iptables-ipset仅允许国内访问---DNAT入口

    前言:     境外肉鸡攻击有点多,并业务无境外访问需求,IDC机房网络防火墙无法实现8K多条的china大陆地址导入;为实现仅china大陆地址访问,在业务入口主机(DNAT端口映射或DNAT端口转发),使用iptables防火墙+ipset过滤实现访问控制,对于访问量不大的业务可考虑使用。 如

    2024年02月06日
    浏览(28)
  • 计算机网络 day8 动态路由 - NAT - SNAT实验 - VMware的网卡的3种模式

    目录 动态路由:IGP 和 EGP 参考网课:4.6.1 路由选择协议概述_哔哩哔哩_bilibili ​编辑 IGP(Interior Gateway Protocol)内部网关协议: EGP(Interior Gateway Protocol)外部网关协议: BGP 边界网关协议(Border Gateway Protocol) 实验: NAT:网络地址转换 NAT 有以下几种常见的应用方式: SNAT

    2024年02月16日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包