Hablando con Julián (conserje de mi facultad) me explicó que en Ubuntu cuando pones tu router u otro a transmitir en el canal 12 o 13 la tarjeta no funciona, lo detecta, pero no se conecta. Según me explicó esto ocurría porque en Estados Unidos esos sólo son legales los canales del 1 al 11. Teóricamente cuanto más alto sea el canal mayor es la velocidad que puede alcanzar la tarjeta. Debido a ésto se puso a buscar y encontró dos configuraciones para la tarjeta ipw3945 e ipw4695 para que así funcionaran (yo probé la primera en dos portátiles y funciona perfectamente). Son estas:
1) Editamos este archivo:
sudo gedit /etc/modprobe.d/options
y le añadimos la siguiente línea:
options cfg80211 ieee80211_regdom= «EU»
2) Editamos este otro archivo:
sudo gedit /etc/modprobe.conf
y le añadimos:
options ath_pci countrycode=850
donde ath_pci es el nombre de nuestro módulo, por ejemplo, iwl4965 o iwl3945.
En countrycode debemos poner el de nuestro país, en este caso pongo el de España que es el 850.
Saludos y gracias a Julián por su ayuda.