AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 671974
Accepted
Nagev
Nagev
Asked: 2021-10-06 08:30:03 +0800 CST2021-10-06 08:30:03 +0800 CST 2021-10-06 08:30:03 +0800 CST

Como identificar dispositivos desconhecidos no traceroute ou ping

  • 772

Ao tentar solucionar um ping com falha do host do Windows para o endereço IP de uma máquina virtual convidada do Linux (192.168.1.19), fiz um traceroute:

$ traceroute 192.168.1.19
traceroute to 192.168.1.19 (192.168.1.19), 30 hops max, 60 byte packets
 1  Samsung.station (192.168.1.17)  3132.517 ms !H  3132.491 ms !H  3132.489 ms !H

$ ping 192.168.1.19
PING 192.168.1.19 (192.168.1.19) 56(84) bytes of data.
From 192.168.1.17 icmp_seq=1 Destination Host Unreachable
From 192.168.1.17 icmp_seq=2 Destination Host Unreachable

$ ping hostname
PING hostname (192.168.1.19) 56(84) bytes of data.
From Samsung.station (192.168.1.17) icmp_seq=1 Destination Host Unreachable
From Samsung.station (192.168.1.17) icmp_seq=2 Destination Host Unreachable

Eu posso pingar o IP do host (192.168.1.15) do convidado. O problema é que eu sei o que tenho na minha rede, mas não tenho ideia do que essa Samsung.stationmáquina deveria ser. Fiz login no roteador Wi-Fi e não consigo identificar nenhum dispositivo com um endereço IP "192.168.1.17". Desliguei ou desconectei o Wi-Fi de todos os poucos dispositivos Samsung na rede, mas ainda obtenho o mesmo resultado.

Meu objetivo final é fazer o ping funcionar nos dois sentidos, mas agora também gostaria de saber se há algo que eu possa fazer para identificar esse misterioso dispositivo! Eu vi uma pergunta relacionada, mas ainda não estou tentando bloquear dispositivos, primeiro quero saber qual seria o melhor próximo passo aqui, antes de reiniciar o roteador. Se alguém puder dizer com confiança que não existem ferramentas Linux que possam me ajudar a resolver isso ou obter mais informações, essa também é uma resposta válida. Obrigada.

Atualizar

A máquina host está executando o Windows 10, conectado à rede na interface Wi-Fi integrada.

A máquina virtual está no VirtualBox. Eu escolhi um "Adaptador em Ponte" intencionalmente, para obter um endereço IP DHCP dedicado, o que torna fácil e conveniente acessar seu servidor web local. Essa configuração estava funcionando bem em uma VM Ubuntu anterior, mas a VM em questão aqui é uma nova instalação mínima do Debian 11 (sem desktop).

Eu também reiniciei o roteador Wi-Fi, então algumas coisas mudaram:

  • O host do Windows está agora em 192.168.1.16, mas aparece no roteador Wi-Fi com o "nome do host" da VM! Provavelmente era o mesmo que antes da reinicialização, eu provavelmente tinha perdido o fato de que o nome do host para o host do Windows não estava na lista de dispositivos.
  • A VM ainda relata um IP de 192.168.1.19. Mas agora ele também falha ao pingar o IP do host (.16) e traceroutepara 192.168.1.16 apenas mostra * * *todos os 30 saltos.
  • Fazer traceroutedo host para o IP do convidado relatado ainda mostra o misterioso salto para o IP do ponto 17, mas não tem mais o nome do Samsung.stationhost ao lado dele, não sei de onde veio antes. Aqui está:
    $ traceroute 192.168.1.19
    
    traceroute to 192.168.1.19 (192.168.1.19), 30 hops max, 60 byte packets
     1  192.168.1.17 (192.168.1.17)  3121.263 ms !H  3121.242 ms !H  3121.239 ms !H

Eu colaria a saída da ip addressVM, mas não tenho a integração da área de transferência funcionando, e mesmo a pasta compartilhada que era fácil na VM anterior não é visível nesta, então também não posso redirecionar a saída para um arquivo.

Agora é evidente que a raiz do problema de conectividade parece ser que o adaptador em ponte falhou ao obter seu próprio IP DHCP do servidor DHCP do roteador, o que provavelmente perdi antes da reinicialização devido ao nome do host da VM aparecer na lista de Wi-Fi dispositivos no roteador.

Isso acabou sendo mais uma solução de problemas do VirtualBox do que qualquer coisa, peço desculpas por isso. Provavelmente vou atribuir um IP fixo à VM. Qualquer dica sobre o mistério do salto inesperado ainda seria interessante.

Segunda atualização

Acabei de lembrar que posso usar tcpdumppara obter mais informações. Tem sido uma das minhas ferramentas favoritas de solução de problemas de rede há anos! Vou postar uma atualização ou uma resposta dependendo do que eu encontrar. Além disso, ainda não reiniciei o Windows. Outras sugestões ainda são bem-vindas.

ping traceroute
  • 2 2 respostas
  • 412 Views

2 respostas

  • Voted
  1. Best Answer
    Bib
    2021-10-06T10:23:46+08:002021-10-06T10:23:46+08:00

    192.168.1.19 não existe. 192.168.1.17 está dizendo que não existe. Como está na mesma sub-rede e é o primeiro salto, isso sugere que 192.168.1.17, samsung.station, é o sistema no qual você está executando o traceroute e ping. Ou 192.168.1.17 está agindo como proxy e quaisquer nomes de host desconhecidos serão encaminhados a ele. Em outras palavras, não há nada para ver aqui.

    • 1
  2. Nagev
    2021-10-08T09:43:31+08:002021-10-08T09:43:31+08:00

    TL;DR: O problema de rede foi causado pela execução manual dockerdno WSL. Usando ip addressno mesmo terminal e tcpdumpproporcionou maior clareza.

    Detalhes

    As coisas ficaram claras o suficiente, então estou compartilhando minhas etapas de solução de problemas, pelo que vale a pena. A resposta aceita está absolutamente correta, o ping vinha de 192.168.1.17. Eu tinha um terminal do Windows aberto e estava pensando no IP de origem da guia Powershell, mesmo que eu estivesse executando o ping na guia Ubuntu WSL, então esse foi o meu erro. Se eu fizer ip ano terminal WSL, posso ver uma entrada interessante:

    6: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
        link/ether 02:42:0b:14:ce:50 brd ff:ff:ff:ff:ff:ff
        inet 192.168.1.17/8 brd 192.255.255.255 scope global docker0
           valid_lft forever preferred_lft forever
        inet6 fe80::42:bff:fe14:ce50/64 scope link
           valid_lft forever preferred_lft forever
    

    Observe o mistério 192.168.1.17 . Eu provavelmente já vi isso antes, mas ignorei porque a interface estava inativa e todo o ruído de todas as outras interfaces. Na verdade, eu tenho o docker instalado no WSL (com o apt, não a versão do Windows) e não tenho certeza de como ele está interagindo com a rede, mas parece ter dado o salto aparente. Quanto ao nome do host exibido ao lado do dot17, agora vi nomes diferentes mostrados, então é claramente algum nome em cache que deve ser ignorado porque é enganoso.

    É mais fácil ver a operação em um arquivo PCAP no Wireshark, que capturei com:

    sudo tcpdump -i any icmp -w traceroute.pcap
    

    O primeiro pacote:

    1   0.000000    192.168.1.17    192.168.1.17    ICMP    104 Destination unreachable (Host unreachable)
    

    E dentro do ICMP:

    Internet Control Message Protocol
        Type: 3 (Destination unreachable)
        Code: 1 (Host unreachable)
        Checksum: 0x7313 [correct]
        [Checksum Status: Good]
        Unused: 00000000
        Internet Protocol Version 4, Src: 192.168.1.17, Dst: 192.168.1.18
            0100 .... = Version: 4
            .... 0101 = Header Length: 20 bytes (5)
            Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)
            Total Length: 60
            Identification: 0xa55a (42330)
            Flags: 0x00
            Fragment Offset: 0
            Time to Live: 1
            Protocol: UDP (17)
            Header Checksum: 0x90e3 [validation disabled]
            [Header checksum status: Unverified]
            Source Address: 192.168.1.17
            Destination Address: 192.168.1.18
        User Datagram Protocol, Src Port: 36470, Dst Port: 33434
    

    Portanto, não há salto extra. Também notei que poderia pingar o destino na guia Powershell, mas não na guia WSL. Então eu reiniciei o WSL:

    > wsl --list -v
      NAME            STATE           VERSION
    * Ubuntu-20.04    Running         2
      Debian          Stopped         2
    
    > wsl --shutdown Ubuntu-20.04
    
    > wsl -d Ubuntu-20.04
    

    Agora, se eu fizer ip ano shell WSL recém-iniciado, a última entrada será:

    5: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
        link/sit 0.0.0.0 brd 0.0.0.0
    

    A interface do docker desapareceu. Eu posso pingar do shell WSL novamente. Então me ocorreu: eu tinha iniciado o daemon docker manualmente com sudo dockerd &, foi quando a conectividade quebrou! Outro ponto de interesse é que a VM está usando uma interface em ponte e, embora tenha seu próprio endereço IP e possa executar ping em todos os outros dispositivos da rede, ela não pode executar ping no IP da máquina host.

    A boa notícia é que agora tenho o docker em execução na VM e posso SSH a partir do WSL, ou melhor ainda, diretamente do PowerShell, e tudo funciona bem.

    • 0

relate perguntas

  • ping no trecho Raspbian parece ignorar a opção -w

  • Como desativar a resposta de ping (ICMP echo) no Linux o tempo todo?

  • ping: mostra apenas resultados

  • Por que o ping resolve para um endereço diferente do traceroute? e lince?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve