Não, você não precisa atualizar o kernel do Linux.
Você precisa identificar a causa do problema. Geralmente, isso envolve procurar mensagens de erro e descrever os sintomas exatos.
Existem ferramentas de diagnóstico que você pode usar em uma janela de prompt de comando. Por exemplo.
sudo ifconfig
netstat -nr
host www.google.com
ping www.google.com
traceroute www.google.com
wget www.google.com
Pode ser necessário instalar o traceroute usando
sudo apt-get install traceroute
Aqui estão os extractos relevantes do que esses comandos produzem em um sistema em funcionamento
$ sudo ifconfig
eth0 Link encap:Ethernet HWaddr 00:ff:19:60:1a:00
inet addr:10.0.2.15 Bcast:10.0.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
$ netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
10.0.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 10.0.2.2 0.0.0.0 UG 0 0 0 eth0
$ host www.google.com
www.google.com is an alias for www.l.google.com.
www.l.google.com has address 173.194.66.99
www.l.google.com has address 173.194.66.105
www.l.google.com has address 173.194.66.104
www.l.google.com has address 173.194.66.106
www.l.google.com has address 173.194.66.103
www.l.google.com has address 173.194.66.147
$ ping -c 5 www.google.com
PING www.l.google.com (173.194.66.147) 56(84) bytes of data.
--- www.l.google.com ping statistics ---
5 packets transmitted, 0 received, 100% packet loss, time 4000ms
Ops - OK Google bloqueia ping, tudo bem
$ wget www.google.com
--2012-05-18 15:59:51-- http://www.google.com/
Resolving www.google.com... 173.194.66.105, 173.194.66.104, 173.194.66.106, ...
Connecting to www.google.com|173.194.66.105|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: 'index.html'
[ <=> ] 12,013 --.-K/s in 0.02s
2012-05-18 15:59:52 (587 KB/s) - 'index.html' saved [12013]