SNAT和DNAT

SNAT和DNAT

  • 一、SNAT策略及应用
    • 1.1SNAT策略概述
    • 1.2开启SNAT的命令
      • 1.2.1 临时打开
      • 1.2.2永久打开
    • 1.3SNAT转换1:固定的公网IP地址
    • 1.4SNAT转换2:非固定的公网IP地址(共享动态IP地址)
    • 1.5SNAT案例
      • 1.5.1实验准备
      • 1.5.2配置网关服务器(12.0.0.1)的配置网关
      • 1.5.3配置内置网服务器(192.168.11.11)相关配置
      • 1.5.4配置外网服务器(12.0.0.10)的相关配置
      • 1.5.5开启SNAT
  • 二、DNAT策略与应用
    • 2.1DNAT应用环境
    • 2.2DNAT原理
    • 2.3DNAT转换前提条件
  • 三、tcpdump--Linux抓包

一、SNAT策略及应用

1.1SNAT策略概述

  • SNAT原理

    • 源地址转换
    • 修改数据包的源地址
  • SNAT转换前提条件
    1.局域网各主机已正确设置ip地址,子网掩码,默认网关地址
    2.Linux网关开启ip路由转发

1.2开启SNAT的命令

1.2.1 临时打开

1.echo 1>/proc/sys/net/IPv4/ip_forward
2.sysctl -w net.ipv4.ip  forward=1

1.2.2永久打开

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

1.3SNAT转换1:固定的公网IP地址

#配置SNAT策略,实现snat功能,将所有192.168.100.0这个网段的ip的源ip改为10.0.0.1
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j SNAT --to 10.0.0.1
                                    可换成单独IP   出站外网网卡            外网IP
或
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens33 -j SNAT --to-source 10.0.0.1-10.0.0.10
                                     内网IP   出站外网网卡                    外网IP或地址池

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

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

1.5SNAT案例

1.5.1实验准备

  • web服务器ip:192.168.11.11(nat1)、关闭防火墙和selinux、开启http服务
  • 网关服务器内网ip:192.168.11.12(nat1);外网ip:12.0.0.1(nat2)、关闭防火墙和selinux,开启http服务
  • win7客户端ip:12.0.0.10(nat2)
  • vmware的虚拟网络编辑器中默认nat模式网段:192.168.11.0,nat2模式网段:12.0.0.0

SNAT和DNAT_第1张图片

1.5.2配置网关服务器(12.0.0.1)的配置网关

1.添加一块虚拟网卡,并自定义

SNAT和DNAT_第2张图片

2.复制并修改ens36网卡

SNAT和DNAT_第3张图片

#切换至网卡配置文件所在目录
[root@localhost network-scripts]#cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]#cp ifcfg-ens33 ifcfg-ens38

SNAT和DNAT_第4张图片
SNAT和DNAT_第5张图片
SNAT和DNAT_第6张图片

3.修改ens36网卡

SNAT和DNAT_第7张图片
4.重启网卡并看下是否重启成功

在这里插入图片描述

SNAT和DNAT_第8张图片
5.ping12.0.0.1是否能ping通

SNAT和DNAT_第9张图片

6.网关开启ip路由转发
SNAT和DNAT_第10张图片

SNAT和DNAT_第11张图片

1.5.3配置内置网服务器(192.168.11.11)相关配置

1.修改ens33网卡

SNAT和DNAT_第12张图片

2.重启网络服务

SNAT和DNAT_第13张图片

3.ping网关测试

SNAT和DNAT_第14张图片

1.5.4配置外网服务器(12.0.0.10)的相关配置

1.修改 ens33网卡模式为仅主机模式

SNAT和DNAT_第15张图片

3.修改ens33网卡(临时)

SNAT和DNAT_第16张图片

4.ping网关测试

SNAT和DNAT_第17张图片

1.5.5开启SNAT

1.此时主机2,ping不通主机3IP地址12.0.0.10

SNAT和DNAT_第18张图片
2.查看网关服务器的iptables规则并清除

SNAT和DNAT_第19张图片

2.添加SNAT转换:固定的公网IP地址

SNAT和DNAT_第20张图片
3.再去主机2,ping主机3IP地址12.0.0.10

SNAT和DNAT_第21张图片

二、DNAT策略与应用

2.1DNAT应用环境

在internet中发布位于局域网内的服务器

2.2DNAT原理

修改数据包的目的地址

2.3DNAT转换前提条件

1.局域网的服务器能够访问internet
2.网关的外网地址有正确的DNS解析记录
3.Linux网关开启IP路由转发

vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1 
sysct1 -p

1.在主机2发布内网web服务

SNAT和DNAT_第22张图片
2.在主机3上curl 12.0.0.1
SNAT和DNAT_第23张图片

3.在主机1上curl192.168.11.12

SNAT和DNAT_第24张图片

4.添加DNAT转换

SNAT和DNAT_第25张图片

5.此时在主机3上curl 12.0.0.1

SNAT和DNAT_第26张图片

三、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

(1)tcp∶ ip icmp arp rarp 和 tcp、udp、icmp这些选项等都要放到第一个参数的位置,用来过滤数据报的类型

(2)-i ens33 ∶只抓经过接口ens33的包

(3)-t ∶不显示时间戳

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

(5)-c 100 ∶只抓取100个数据包

(6)dst port ! 22 ∶不抓取目标端口是22的数据包

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

(8)-w ./target.cap ∶ 保存成cap文件,方便用ethereal (即wireshark)分析

你可能感兴趣的:(linux,运维,服务器,网络)