脚本核心逻辑:自动检测ARP文件变更并更新缓存 下面这段脚本的核心逻辑很简单:检查本地保存的 arp.txt 文件是否发生了变更,如果变了,就清空当前 ARP 缓存并重新加载静态映射。更巧妙的是,配合 FTP 拉取远程的 arp.txt,就能在不登录服务器的情况下动态调整静态 MAC 表,省去了手动
下面这段脚本的核心逻辑很简单:检查本地保存的 arp.txt 文件是否发生了变更,如果变了,就清空当前 ARP 缓存并重新加载静态映射。更巧妙的是,配合 FTP 拉取远程的 arp.txt,就能在不登录服务器的情况下动态调整静态 MAC 表,省去了手动敲命令的麻烦。
#!/bin/sh
_PATH="/home/shwb"
if [ -s $_PATH/md5 ] && [ -s $_PATH/arp.txt ] ; then
new=`md5 $_PATH/arp.txt | cut -d ' ' -f 4`
old=`cat $_PATH/md5`
if [ "$new" != "$old" ] ; then
arp -a -d
arp -f $_PATH/arp.txt
date "+DATE: %Y-%m-%d-%H:%M:%S" >>/var/log/arp.log
md5 $_PATH/arp.txt | cut -d ' ' -f 4 >$_PATH/md5
fi
elif [ -s $_PATH/arp.txt ] ; then
arp -a -d
arp -f $_PATH/arp.txt
date "+DATE: %Y-%m-%d-%H:%M:%S" >>/var/log/arp.log
md5 $_PATH/arp.txt | cut -d ' ' -f 4 >$_PATH/md5
fi
需要说明的是,arp.txt 文件的格式很直接:每行一个 IP 地址和对应的 MAC 地址,用空格隔开,像下面这样:
长期稳定更新的攒劲资源: >>>点此立即查看<<<
192.168.1.1 00:00:00:00:00:00
实际部署时,把 FTP 下载命令加到脚本前面(或者用 cron 定期执行),就能实现远程动态修改服务器的静态 MAC 表,灵活又实用。
侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述