SNAT和DNAT策略與應用

ZhulongQ發表於2020-11-27

一、SNAT與DNAT策略

1.1 作用

  • 區域網主機共享單個公網IP地址接入Internet
  • 源地址轉換,Source Network Address Translation
  • 修改資料包的源地址
  • 區域網共享上網

1.2 實現原理

在這裡插入圖片描述

二、實操

在這裡插入圖片描述pxe伺服器上需要配置服務,來供客戶機進行系統的安裝,因為不在同一個網段,所以防火牆需要做地址的分發以及iptables策略的製作。

2.1 指令碼來製作pxe伺服器上的配置

#!/bin/bash
#  pex自動安裝
#  vsftpd服務的配置
yum -y install vsftpd
FTP=/etc/vsftpd/vsftpd.conf
sed -i '$aanon_umask=022' $FTP
sed -i '$aanon_other_write_enable=YES' $FTP
sed -i '$aanon_upload_enable=YES' $FTP
sed -i '$aanon_mkdir_write_enable=YES' $FTP
sed -i '/listen/s/NO/YES/g' $FTP
sed -i '/listen_ipv6/s/YES/NO/g' $FTP
systemctl start vsftpd
#  ftp服務的配置
yum -y install tftp-server
TFTP=/etc/xinetd.d/tftp
sed -i '/disable/s/yes/no/g' $TFTP
systemctl start tftp 
systemctl enable tftp
#  啟動檔案的配置
yum -y install syslinux
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot
cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot
cd /mnt/isolinux
cp /mnt/isolinux/vesamemu.c32 /var/lib/tftpboot
mkdir /var/lib/tftpboot/pxelinux.cfg
cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
A=/var/lib/tftpboot/pxelinux.cfg/default
sed -i '/.$/d' $A
echo "default auto" >> $A
sed -i '$aprompt 0' $A
sed -i '$alabel auto' $A
sed -i '$akernel vmlinuz' $A
sed -i '$aappend initrd=initrd.img method=ftp://192.168.20.11/pub 			ks=ftp://192.168.20.11/ks.cfg' $A
sed -i '$alabel linux text' $A
sed -i '$akernel vmlinuz' $A
sed -i '$aappend text initrd=initrd.img method=ftp://192.168.20.11/pub' $A
sed -i '$alabel linux rescue' $A
sed -i '$akernel vmlinuz' $A
sed -i '$aappend rescue initrd=initrd.img method=ftp://192.168.20.11/pub' $A
#  xinetd服務的配置
yum -y install xinetd
chkconfig --level 35 xinetd on
chkconfig --level 35 tftp on
mount /dev/cdrom /var/ftp/pub
# kickstart無人值守
yum -y install system-config-kickstart
systemctl restart vsftpd
systemctl restart tftp 

再講預先準備好的ks.cfg檔案重定向到/var/ftp下面即完成了pxe伺服器的配置

2.2 防火牆的配置

防火牆需要為客戶機提供地址,所以

 # yum -y install dhcpd
  # vi /etc/dhcp/dhcpd.conf
  ddns-update-style none;
  next-server 192.168.20.11;
  filename "/pxelinux.0";
  subnet 192.168.20.0 netmask 255.255.255.0 {
   range 192.168.20.100 192.168.20.150;
  option routers 192.168.20.11;
  option domain-name-servers 8.8.8.8, 9.9.9.9;
  }
  # systemctl start dhcpd

其次要進行SNAT和DNAT策略的製作

yum -y install iptables iptables-server
iptables -t nat -I POSTROUTING -s 192.168.10.10 -o ens36 -j SNAT --to-source 192.168.20.12
iptables -t nat -I POSTROUTING -d 192.168.20.12 -i ens36 -j DNAT --to-destination 192.168.10.10

3.3 客戶機上的操作

進行基本的裝機選項之後,進行裝機
在這裡插入圖片描述表示防火牆的策略製作成功,跨網段的客戶機能夠接收到來自另一個網段的伺服器的服務。

相關文章