Tenho conexão com fio e também wi-fi.
A internet com conexão com fio funciona, enquanto a internet do wifi não funciona
Se conectado com fio e também wi-fi, o seguinte é a saída do ifconfig.
root@gauranga /home/simha # ifconfig
enp2s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.5.113 netmask 255.255.248.0 broadcast 192.168.7.255
inet6 fe80::66f9:5aa3:5449:bbf5 prefixlen 64 scopeid 0x20<link>
ether 68:f7:28:71:8d:be txqueuelen 1000 (Ethernet)
RX packets 736130 bytes 710984014 (678.0 MiB)
RX errors 0 dropped 181 overruns 0 frame 0
TX packets 278415 bytes 23924104 (22.8 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 1428 bytes 369189 (360.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1428 bytes 369189 (360.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.5.245 netmask 255.255.248.0 broadcast 192.168.7.255
inet6 fe80::14ac:2256:c091:2660 prefixlen 64 scopeid 0x20<link>
ether 2e:dc:cd:0d:1f:82 txqueuelen 1000 (Ethernet)
RX packets 1237969 bytes 135361481 (129.0 MiB)
RX errors 0 dropped 4059 overruns 0 frame 0
TX packets 18074 bytes 2059915 (1.9 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Se estiver usando apenas wifi, ele faz ping para 192.168.0.1
$ ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=10.7 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=64 time=7.82 ms
64 bytes from 192.168.0.1: icmp_seq=3 ttl=64 time=12.0 ms
64 bytes from 192.168.0.1: icmp_seq=4 ttl=64 time=7.14 ms
enquanto o ping para google.com não mostra nada. não vai mais longe.
/etc/resolv.conf é
nameserver 192.168.0.1
Também quando estiver em wi-fi:
simha@gauranga ~ % ip route show
default via 192.168.0.1 dev wlp3s0 proto static metric 600
192.168.0.0/21 dev wlp3s0 proto kernel scope link src 192.168.5.245 metric 600
E quando conectado:
simha@gauranga ~ % ip route show
default via 192.168.0.1 dev enp2s0 proto static metric 100
192.168.0.0/21 dev enp2s0 proto kernel scope link src 192.168.5.113 metric 100
Não consigo entender o problema.
Tudo isso aconteceu depois que atualizei o archlinux.
Responder1
Primeiro, se você executar ping em google.com, seu PC tentará resolver o nome para um endereço IP por meio de um servidor de nomes fornecido /etc/resolv.conf
(sem e no final!).
Segundo, caso não tenha sido um erro de digitação aqui em superuser.com, seu servidor de nomes aponta para 193.168.0.1, não 192.168.0.1. Portanto, ele não pode resolver o nome. Em vez disso, seu PC tenta acessar 193.168.0.1 e não o encontra. (Mesmo que 193.168.0.1 era o seu servidor de nomes, não está na mesma rede que 192.168.0.0/255.255.248.0. Não precisa estar na mesma rede, mas o roteamento deve ser configurado para conhecer uma rota para o servidor de nomes).
Em seguida, verifique sua tabela de roteamento via ip route show
ou ip route
( ip r
sinônimos). Caso não haja rota padrão, adicione uma via ip route add default via 192.168.0.1
. Depois disso, tente ping google.com
novamente.
Editar: para configurar as rotas incluindo a rota padrão permanentemente, dependendo da versão do seu systemd, use netctl
ou systemd-networkd
. Nos meus PCs, costumo achar netctl
mais estável na configuração das rotas do que systemd-networkd
.
Responder2
Mesmo caso que o meu, onde meu dispositivo (Dell comBroadcom BCM43228onde instalei manualmente ofirmware b43) está conectado ao Wi-Fi (sem fio) (pois é visível nos dispositivos conectados do roteador), mas não tem acesso à Internet (não pode ping
). estou usandoiwd /iwctl
conforme instruído atualmente noDocumento de instalação do Arch Linux.
Algumas coisas para tentar:
- Notas:
- Você pode tentar diretamente o nº 5 abaixo. Foi o passo que finalmente me levou a ser capaz de
ping google.com
- Os comandos abaixo assumem
wlan0
como nome do dispositivo visível emip link
. Ajuste de acordo.
- Você pode tentar diretamente o nº 5 abaixo. Foi o passo que finalmente me levou a ser capaz de
Iniciar/reiniciar oiwdserviço
sudo systemctl start iwd.service
Instale se ainda não existir. Use uma conexão Ethernet com fio ao roteador ou conecte um telefone Android (que tenha acesso à Internet) e habilite o "Modem USB" para que ele funcione como sua conexão com fio. Se não for possível no ambiente Arch Linux, você pode tentar usar o instalador Arch (unidade inicializável), depois
mount
a unidade de disco rígidomount --mkdir /dev/sda2 /mnt/sda2
echroot
dentro delaarch-chroot /mnt/sda2
pacman -S iwd
-
ip link # or ls /sys/class/net ip link set wlan0 up # where wlan0 is the device name
Certifique-se de que você estáconectado ao Wi-Fi.
sudo iwctl device wlan0 show sudo iwctl station wlan0 show
Conectarse ainda não estiver conectado
sudo iwctl --passphrase mywifipassword station wlan0 connect MyWifiSsidName
Além disso, acesse o roteador e visualize os dispositivos conectados para ter certeza de que está conectado.
Para ativar a atribuição automática de endereço IP,habilitar manualmente o cliente DHCP integradoconforme descrito na nota dentro doEtapas de conexão Wi-Fi.
sudo cat >> /etc/iwd/main.conf [General] EnableNetworkConfiguration=true
Esseera oetapaisso finalmente fez com que funcionasse para mim.
Verifique os logs do sistema para ver se
error
háfail
algo relacionado ao DNS. O meu mostrouWARNING: src/resolve.c:resolve_systemd_set_dns() condition !systemd_state.is_ready failed
journalctl journalctl | grep -i dns
Verifique se há algum erro. O meu mostrou
Failed to set global data: Unit dbus-org.freedesktop.resolve1.service not found.
systemd-resolve --status
Reinicie o serviço
sudo systemctl restart systemd-resolved
Após esta etapa, consegui com sucesso
ping google.com
Para depuração, alguns comandos úteis são dmesg
e journalctl
.