系统启动调用脚本:
oldeth=`sed -n '1,1p' /usr/config/.fit_snat_eth.conf`
#oldeth先读取老的配置,
if [ -z $oldeth ];then
#没有配置默认
oldeth=vlan4095
fi
set_snat $oldethset_snat执行配置命令脚本:
if [ -z $1 ];then
echo "set_snat [interface name]"
exit 0
fi
if_eth=`ifconfig | grep $1 >/dev/null`
#查看接口是否可用
if [ -z if_eth ];then
echo "interface $1 is not find."
exit 0
fi
#读取oldeth接口iptables删除
oldeth=`sed -n '1,1p' /usr/config/.fit_snat_eth.conf`
if [ -z $oldeth ];then
oldeth=$1
fi
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -D POSTROUTING -o $oldeth -j MASQUERADE >>/dev/null
iptables -t nat -D POSTROUTING -o $1 -j MASQUERADE >>/dev/null
iptables -t nat -A POSTROUTING -o $1 -j MASQUERADE >>/dev/null
#保存新接口
echo $1 > /usr/config/.fit_snat_eth.conf
本文介绍了一套用于系统启动时自动配置SNAT(源地址转换)接口的Shell脚本。该脚本首先检查并使用旧的接口设置,如果没有则默认使用vlan4095。此外,还提供了一个用于更新SNAT接口的脚本,它会检查接口的有效性,并通过修改iptables规则来完成SNAT配置。
1001

被折叠的 条评论
为什么被折叠?



