V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
emile
V2EX  ›  Linux

Debian 下怎样定时检查网络,并重启网络

  •  
  •   emile · 2015-01-28 21:28:07 +08:00 · 3577 次点击
    这是一个创建于 3589 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,当个伸手党。

    学校宿舍搞了个开发板装Debian当下载机,可惜只有学校校园网的wifi能用。但遇到个挺奇葩的问题,就是其他设备例如笔记本连接wifi的话,不会出现DHCP租约到了后断网的情况。
    但是手机和这块开发板就有这样的问题。DHCP经常获取不到ip。或者租约到了后,结果就不能续租,然后就断网了。
    如果用静态ip的话,同样会出现几个小时断网的情况,现象就是ifconfig里面有地址,但是就是不能ping,断网的。只能通过多次ifdown,ifdown 才能重新连上。

    现在想就是求个方法。后台定时1分钟(或几分钟)执行一次。
    ping 某个网址,能ping就停止。
    不能ping,就ifdown,ifup 无线网卡一遍。继续ping,不行就重复ifdown&ifup,直到能联网,停止

    第 1 条附言  ·  2015-01-28 22:13:20 +08:00
    还是查了查。
    大家帮忙看下这样对不?

    #!/bin/sh
    while [ping -c 5 192.168.56.1 > /dev/null 2>&1];do
    echo "The network is down! Now try restarting!" | ifdown wlan0 && ifup wlan0
    done
    9 条回复    2015-01-29 10:41:00 +08:00
    Livid
        1
    Livid  
    MOD
       2015-01-28 21:43:42 +08:00   ❤️ 1
    你可以写一个这样的脚本,完成以下功能:

    * 检查网络状况
    * 如果网络有问题 ifdown / ifup

    然后把这个脚本放进 crontab 里每 10 分钟运行一次。

    */10 * * * * your_script.sh > /dev/null
    emile
        2
    emile  
    OP
       2015-01-28 21:48:34 +08:00
    @Livid hi,感谢老大。
    能不能帮忙写一个呢。。我是属于那种懂一点的小白。所以要自己搞得花很多时间查资料。。
    所以就奉行拿来主义了。
    emile
        3
    emile  
    OP
       2015-01-28 21:52:28 +08:00
    @Livid 另外说个无关话题。这几天好多奇怪的访问502啊。。
    qingting
        4
    qingting  
       2015-01-28 22:13:46 +08:00   ❤️ 1
    可以通过检测DNS的A记录的方式来检测网络是否畅通。

    #!/bin/sh

    newip=`dig google-public-dns-a.google.com @208.67.222.222 -p 5353 +short`
    oldip='8.8.8.8'
    if [ "$newip" != "$oldip" ]; then
    # restart
    date >> /tmp/restart.txt
    fi
    emile
        5
    emile  
    OP
       2015-01-28 22:22:45 +08:00
    @qingting 感谢回复。我这边不手动联网,是不能访问ipv4的外网的,我只用ipv6.所以就想能不能ping下某些ipv6网站来看看是否联网的。能帮我看下我附加部分写的对不对吗
    6IbA2bj5ip3tK49j
        6
    6IbA2bj5ip3tK49j  
       2015-01-28 23:27:13 +08:00
    我对linux的脚本不熟,要是换我来, 就是python做了……
    kxmp
        7
    kxmp  
       2015-01-29 00:56:42 +08:00
    用dhclient...
    liuchen9586
        8
    liuchen9586  
       2015-01-29 08:36:45 +08:00
    @qingting 这是个好主意,感谢分享。
    emile
        9
    emile  
    OP
       2015-01-29 10:41:00 +08:00
    @kxmp 能说说方法吗,谢谢。对了,我之前说了,移动设备和我那个开发板Debian用DHCP比较难获取ip。不知道这边的wifi里面是不是有什么鬼
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1036 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:16 · PVG 06:16 · LAX 14:16 · JFK 17:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.