#!/bin/bash # verificando conexão verifica() { ps aux|grep pppd|grep claro > /dev/null if [ $? == "0" ];then echo "voce esta conectado!" else echo "voce nao esta conectado!" fi } # função para se conectar conecta() { echo conectando... wvdial --config /home/gutocarvalho/confs/wvdial-huawei.conf & sleep 30 # DNS CLARO #echo nameserver 200.255.121.39 > /etc/resolv.conf #echo nameserver 200.169.117.14 >> /etc/resolv.conf # DNS OPENDNS #echo nameserver 208.67.222.222 >> /etc/resolv.conf #echo nameserver 208.67.220.220 >> /etc/resolv.conf # tentando manter a conexao ativa /home/gutocarvalho/bin/opendns ping terra.com.br > /dev/null & } # função para desconectar desconecta() { echo "descontando..." echo "desligando o ping..." PING_ID=$(ps aux|grep "ping terra.com.br"|grep -v grep|awk '{ print $2 }') kill -9 $PING_ID 2&1> /dev/null echo "desligando o wvdial..." WVDIAL_ID=$(ps auxwww|grep "wvdial --config /etc/wvdial-huawei.conf"|grep -v grep|awk '{ print $2 }') kill -9 $WVDIAL_ID 2&1> /dev/null echo "desligando o pppd..." PPPD_ID=$(ps auxwww|grep "pppd"|grep -v grep|awk '{ print $2 }') kill -9 $PPPD_ID 2&1> /dev/null exit 0 } # função reconecta reconecta() { desconecta sleep 5 conecta } # case de opções case "$1" in conecta) conecta ;; desconecta) desconecta ;; reconecta) reconecta ;; verifica) verifica ;; *) echo "Como usar: comando {conecta|desconecta|verifica}" exit 1 ;; esac exit 0