Reiniciando automaticamente a conexão de rede

1

Estou com um pequeno problema no meu Synology NAS. Ele continua jogando fora a conexão com a internet (rede local funciona bem). É bastante aleatório, às vezes não acontece por dias, às vezes acontece a cada 10-20 minutos. Tentei um hard reset, atualização limpa, tudo, mas mesmo em um sistema limpo, em poucos dias continua. Nenhum outro computador mostra tais sintomas na rede.

Normalmente, esse problema pode ser resolvido por um ifdown & ifup, mas estou ficando incomodado com isso - sempre que desejo usar a estação de download, preciso abrir uma sessão de terminal para garantir que haja conexão de rede por esses poucos minutos.

Então a questão seria - existe uma maneira simples de redefinir automaticamente a interface de rede caso não haja conexão com o exterior? Estive pensando em uma pesquisa de um minuto no google.com. Se a solicitação demorar mais de 10 segundos, reinicie a interface de rede. Mas eu prefiro algo nativo, que faz isso automaticamente (sinceramente, eu não desejo escrever um roteiro desse tipo, é um processo muito longo e tedioso para mim).

    
por fonix232 01.06.2014 / 12:56

2 respostas

2

Existem vários pacotes que podem governar / gerenciar a rede. NetworkManager e wicd são 2 que eu estou familiarizado. Você pode executar esses dois a partir da linha de comando e eles podem gerenciar totalmente a rede. Você pode aproveitar para verificar se a rede está em um estado operacional / máximo e para iniciar uma reinicialização se a conectividade for perdida.

Se o dispositivo estiver fornecendo um serviço como o Upstart / Systemd, você também pode colocar regras nesse nível para acionar as reinicializações quando a conectividade com a Internet for perdida.

Algo do cron

Se você está limitado no que pode fazer em termos do software disponível para você na sua caixa Synology, você pode executar algo do cron a cada dois minutos.

if ! ping -Q 1 -c 1 -t 1 google.com; then
    ifdown eth0
    sleep 3
    ifup eth0
fi

Referências

por 01.06.2014 / 16:31
1

Usando o script acima (ligeiramente ajustado) como abaixo executando no agendador de tarefas a cada minuto. Você poderia usar o cron em vez disso, mas é bom ter no gui.

if ! ping -I wlan0 -c 1 google.com; then
ifconfig wlan0 down
sleep 5
ifconfig wlan0 up
fi
    
por 25.09.2015 / 12:27

Tags