Recentemente utilizei uma máquina exclusivamente para iniciar alguns testes com várias máquinas virtuais e obviamente optei por instalar uma versão de Linux para não ter problemas ao configurar os recursos básicos e aproveitar ao máximo os recursos do hardware.
Ao instalar o Ubuntu 11.04 tudo parecia muito bem com a rede até iniciar o acesso a máquina por SSH, a rede ficava muito instável e perdia praticamente 40% dos pacotes muitas vezes ficando inacessível e perdendo completamente a capacidade de comunicação.
Procurando pela internet encontrei uma thread (em inglês) no fórum do Ubuntu que explicava a mesma situação, e indicava que a versão do driver Realtek estava errada.
Abra o terminal e siga os passos abaixo para detectar o problema (como root).
# Verificando a placa de rede na máquina
lspci | grep Realtek
# Se apresentar algo como a linha abaixo, note que a versão da placa é RTL8111/8168B
# 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express
# O comando abaixo listará qual é a versão carregada do driver
lsmod | grep r816*
# Se houver algum retorno provavelmente verá o driver de versão r8169 carregado no lugar do correto
Os drivers corretos podem ser baixados no site oficial da Realtek, porém o download é tão lento que disponibilizo a versão 8.027.00 para Linux com Kernel 2.4 e 2.6 32 bits ou 64 bits aqui, e há uma versão também no Google Code que encontrei aqui.
Os passos abaixo explicam o resto:
# Melhor criar uma pasta para organizar as coisas
mkdir driver-rtl8168
cd driver-rtl8168
# Baixando o driver
# (Com sorte você consegue baixar ainda dentro da máquina, pois ele possui menos de 100K)
wget https://res.phcco.com/drivers/r8168-8.027.00.tar.bz2
# Descompactando
tar -xvf r8168-8.020.00.tar.bz2
cd r8168-8.020.00
# Executando o autorun o driver será compilado e carregado...
./autorun.sh
Neste ponto a rede já deve ficar disponível e o problema terá sido resolvido.