Instalando e configurando CLARO 3G no Ubuntu

De gutocarvalho.net

Conteúdo

[editar] cenário

sistema ubuntu 7.10
kernel 2.6.22-14-generic
modem Huawei E220

[editar] instalação de pacotes

instale o wvdial

root@defiant:/usr/src# apt-get install wvdial

faça o download do pacote abaixo

wget http://oozie.fm.interia.pl/src/huawei.tar.bz2

agora vamos descompactar

tar jxvf huawei.tar.bz2

entrando no diretorio

cd huawei

compilando

make install_ubuntu

alterando a configuração deixando como está abaixo, veja as linhas em negrito!

root@defiant:/usr/src# vim /etc/wvdial-huawei.conf

arquivo de configuracao que funcionou perfeito no ubuntu 7.10

[Dialer Defaults]
Modem = /dev/ttyUSB0
ISDN = off
Modem Type = USB Modem
Baud = 115200
Init1 = ATZ
Init2 = AT+cfun=1
Init3 = AT+CGDCONT=1, “IP”, “claro.com.br”,”",0,0
Phone = *99***1#
Phone1 =
Phone2 =
Phone3 =
Phone4 =
Dial Prefix =
Dial Attempts = 1
Dial Command = ATM1L3DT
Ask Password = off
Password = claro
Username = claro
Auto Reconnect = off
Abort on Busy = off
Carrier Check = on
Check Def Route = on
Abort on No Dialtone = on
Stupid Mode = off
Idle Seconds = 0
Auto DNS = on
;Minimize = off
;Dock = off
;Do NOT edit this file by hand!

arquivo de configuração que funcionou no ubuntu 8.04, no 8.04 não precisei instalar o pacote huawei, apenas espetei o modem e configurei o wvdial.

[Dialer Defaults]
Init1 = ATX3
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2
Init3 = AT+CGDCONT=1,"IP","claro.com.br"
Modem Type = Analog Modem
Baud = 460800
New PPPD = yes
Modem = /dev/ttyUSB0
ISDN = 0
Phone = *99***1#
Dial Command = ATDT
Username = claro
Password = claro
Stupid Mode = 1
Auto DNS = 0
Check DNS = 0

se voce esta com conexão lenta, ligue para 1052 e peça para mudar para seu cadastro para que você possa usar o APN especifico para bandalarga, a única alteração na configuração acima sera a mudança de claro.com.br para bandalarga.claro.com.br. o APN claro.com.br é disputado pelos modens 3G e pelos celulares, agora eles separaram o APN para 3G para não haver competição pelo uso.

bom voltando a configuracao, para conectar digite o seguinte comando!

root@defiant:/usr/src# wvdial --config /etc/wvdial-huawei.conf

depois que ele está conectado eu abro outro terminal e coloco o endereços DNS do cluster OpenDNS no resolv.conf

root@defiant:/usr/src# echo nameserver 208.67.222.222 > /etc/resolv.conf
root@defiant:/usr/src# echo nameserver 208.67.220.220 >> /etc/resolv.conf

geralmente fica bem melhor que a resolução de DNS da claro.

[editar] script para conexão

fiz um pequeno script para conexão, talvez te ajude.

crie ele no diretorio /usr/sbin

vim /usr/bin/claro

coloque esse conteudo no arquivo

#!/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 /etc/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
        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
        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
        echo "desligando o pppd..."
        PPPD_ID=$(ps auxwww|grep "pppd"|grep -v grep|awk '{ print $2 }')
        kill -9 $PPPD_ID
        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

para conectar digite

claro conecta

para desconectar digite

claro desconecta

para verificar a conexao digite

claro verifica

[editar] referências

Ferramentas pessoais