加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – 什么可以防止经常切换具有多个接口的机器的默认源ip

发布时间:2020-12-15 17:02:42 所属栏目:安全 来源:网络整理
导读:目标是在具有多个接口和实时ips的计算机上频繁更改默认传出源ip. 我根据其文档使用ip route replace default,让脚本在循环中运行一段时间.它改变了源IP一段时间,但随后所有对该机器的互联网访问都丢失了.必须从Web界面远程重新启动才能使任何工作正常 是否有
目标是在具有多个接口和实时ips的计算机上频繁更改默认传出源ip.

我根据其文档使用ip route replace default,让脚本在循环中运行一段时间.它改变了源IP一段时间,但随后所有对该机器的互联网访问都丢失了.必须从Web界面远程重新启动才能使任何工作正常

是否有任何可能阻止这种情况稳定运行的事情.我在多台服务器上试过这个?

以下是最低限度的示例

# extract all currently active source ips except loopback
IPs="$(ifconfig  | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 |
awk '{ print $1}')"

read -a ip_arr <<<$IPs

# extract all currently active mac / ethernet addresses
Int="$(ifconfig  | grep 'eth'| grep -v 'lo' | awk '{print $1}')"
read -a eth_arr <<<$Int

ip_len=${#ip_arr[@]}
eth_len=${#eth_arr[@]}

i=0;
e=0;

while(true); do

    #ip route replace 0.0.0.0 dev eth0:1 src 192.168.1.18
    route_cmd="ip route replace 0.0.0.0 dev ${eth_arr[e]} src ${ip_arr[i]}"
    echo $route_cmd
    eval $route_cmd

    sleep 300

    (i++)
    (e++)

    if [ $i -eq $ip_len ]; then
        i=0;
        e=0;
        echo "all ips exhausted - starting from first again"
    #   break;
    fi

done
我想评论,但由于我没有足够的分数,它不会让我.

考虑:

>在运行之前改变延迟时间是否会在失败之前改变迭代次数?
>导出ifconfig&每次更改它时都会路由,以查看某些内容是否随时间变化有意义.也许对它进行一些基本测试(ping,nslookup等)基本上,找出它究竟出了什么问题.还要导出发送到日志文件的命令(每次更改的文本文件?)以查看其中的更改,以查看x迭代后是否有些不同.
>失去了什么连接?传入?即将离任的?具体应用?
>你说你在其他服务器上使用/执行此操作没有问题吗?
> IP是:静态(/ etc / network / interfaces),bootp / DHCP,半静态(bootp / DHCP服务器服务,基于MAC地址),如果由bootp / DHCP提供服务,租约持续时间是多少?

关于最后一句话:
bootp / dhcp将为x持续时间提供IP.说它的60分钟.一半时间之后它将“检查”bootp / dhcp服务器是否可以保留IP,并再次将租约延长到60分钟,这可能意味着对ifconfig进行小的重新配置(甚至可能在脚本的同一时间) ?).

心连心

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读