iptables的源地址、目标地址转换

目录

一、实验准备

二、配置web服务器

三、配置web防火墙网卡

四、配置客户机网卡

五、测试

1、开启防火墙功能,设置源地址转换,通过改变我客户机的地址身份为web服务器同网段来实现访问

2、通过改变目标地址(客户机)的地址为web同网段来实现


一、实验准备

二、配置web服务器

配置网卡2

vim /etc/sysconfig/network-scripts/ifcfg-ens160
 
TYPE=Ethernet
BO0TPROTO=static
NAME=ens160
DEVICE=ens160
ONB00T=yes
IPADDR=192.168.200.100
PREFIX-24
 
#########此处不设置网关,应为在下步实验中可以用防火墙的原地址转换来是客户机访问到web
#########如果此处设置了网关,并作为防火墙ens224的IP,那么客户机直接就能访问到web,达不到本次实验的效果
 
systemctl restart network

安装、测试httpd

三、配置web防火墙网卡

配置网卡一

vim /etc/sysconfig/network-scripts/ifcfg-ens160

TYPE=Ethernet
BOOTPROTO=static
NAME=ens160
DEVICE=ens160
ONBOOT=yes
IPADDR=192.168.115.2  ##此处的IP设为防火墙的ens160的IP,用于客户机能访问防火墙
PREFIX=24

配置网卡二

cp /etc/sysconfig/network-scripts/ifcfg-ens160 /etc/sysconfig/network-scripts/ifcfg-ens224

vim /etc/sysconfig/network-scripts/ifcfg-ens224
 

TYPE=Ethernet
BOOTPROTO=static
NAME=ens224
DEVICE=ens224
ONBOOT=yes
IPADDR=192.168.200.2
PREFIX=24

重启网络 systemctl  restart network

开启路由转发

[root@iptables ~]# cat << EOF >> /etc/sysctl.conf 
> net.ipv4.ip_forward = 1

> EOF
[root@iptables ~]# sysctl -p
net.ipv4.ip_forward = 1

四、配置客户机网卡

vim /etc/sysconfig/network-scripts/ifcfg-ens160

TYPE=Ethernet
BOOTPROTO=static
NAME=ens160
DEVICE=ens160
ONBOOT=yes
IPADDR=192.168.115.100
PREFIX=24
GATEWAY=192.168.115.2 
DNS1=192.168.115.2
 
 
systemctl restart network 

五、测试

测试防火墙能否ping通客户机和web

1、开启防火墙功能,设置源地址转换,通过改变我客户机的地址身份为web服务器同网段来实现访问

systemctl start firewalld.service
 
iptables -t nat -A POSTROUTING -s 192.168.115.0/24 -o ens224 -j SNAT --to-source 192.168.200.2
##192.168.115.0网段的数据从ens224网卡进入后,把原地址改为192.168.200.2

现在反过来用web来ping客户机,结果是失败的,那么该怎么操作呢?

2、通过改变目标地址(客户机)的地址为web同网段来实现

首先为了体现效果,在客户机上上安装httpd服务

yum -y install httpd
systemctl restart httpd
echo "i am client" > /var/www/html/index.html

######设置防火墙
iptables -t nat -I PREROUTING -d 192.168.200.2 -p tcp --dport 80 -j DNAT --to-destination 192.168.115.100
表示路由前访问192.168.200.2并且目标是tcp 80 端口的都会被转换目标地址为192.168.115.100(也就是我们的客户机)

相关推荐

  1. Linux iptables地址转换

    2023-12-07 00:56:03       32 阅读
  2. 计算机网络中网络地址转换

    2023-12-07 00:56:03       31 阅读
  3. npm切换地址

    2023-12-07 00:56:03       36 阅读
  4. npm镜像地址

    2023-12-07 00:56:03       22 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-07 00:56:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-07 00:56:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-07 00:56:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-07 00:56:03       20 阅读

热门阅读

  1. Windows 安装 flash-attention 和 bitsandbytes

    2023-12-07 00:56:03       37 阅读
  2. 编写bat脚本执行msyql建库sql

    2023-12-07 00:56:03       37 阅读
  3. 在windows下编译libiconv库

    2023-12-07 00:56:03       37 阅读
  4. vue2 组件内路由守卫使用

    2023-12-07 00:56:03       38 阅读
  5. for...in 和for...of 的区别

    2023-12-07 00:56:03       38 阅读
  6. 视频播放器

    2023-12-07 00:56:03       35 阅读
  7. OpenCV4.x图像处理实例-常见图像滤镜特效实现

    2023-12-07 00:56:03       38 阅读
  8. 3.3 SaltStack 的部署和自动化配置

    2023-12-07 00:56:03       36 阅读
  9. 悲观锁乐观锁在django中使用

    2023-12-07 00:56:03       20 阅读
  10. 基础Python教程之读写sqlite

    2023-12-07 00:56:03       46 阅读
  11. Mongodb使用killCursors停止运行的cursor

    2023-12-07 00:56:03       40 阅读