Eu tenho um equipamento industrial que roda em um sistema operacional básico chamado VxWorks . Geralmente, comunico-me com o sistema para fins de solução de problemas, configurando meu IP IPv4 para o mesmo intervalo do IP local e, em seguida, executando o software de diagnóstico.
Algumas semanas atrás, descobri que, por alguma razão estranha, o endereço IP local do sistema se estabeleceu 0.0.0.0
. Agora eu quero entrar em diagnósticos para alterá-lo, mas meu PC não permitirá a configuração de um IP começando em 0
.
Existe outra maneira de se comunicar com um dispositivo que tenha um IP local de 0.0.0.0
usando um PC com Windows.
Não há como redefinir o dispositivo para as configurações padrão de fábrica sem enviá-lo de volta ao fabricante.
fonte
0.0.0.0
não é um endereço roteável. Muitas peças de software se ligam a0.0.0.0
permitir que o software seja vinculado a qualquer endereço IP atribuído à interface de rede. Isso facilita, por exemplo, colocar o dispositivo em uma configuração de DHCP e você se conecta obtendo o endereço IP do dispositivo e é isso. Minha grande pergunta para você é por que você está definindo o IP IPv4 da sua máquina para o mesmo intervalo que o IP local para executar o software de diagnóstico? Não faz sentido. Você deve apenas obter o endereço IP do dispositivo e se conectar a ele. Dito isso, tenho uma ideia. Postando uma resposta.0.0.0.0
não é possível se tiver uma pilha IP compatível com os padrões. Isso deixa algumas opções: 1 Isto mostra0.0.0.0
como uma forma de sinalizar que não foi possível atribuir um endereço IP. 2 Tem uma pilha IP quebrada que de alguma forma conseguiu se auto-atribuir0.0.0.0
. Eu não sei o suficiente sobre o VxWorks para dizer qual dos dois é mais provável. Se realmente tiver endereço atribuído0.0.0.0
você precisaria de uma pilha IP hackeada para se comunicar com ela. Mas isso não fará muito bem se não tiver atribuído nenhum endereço.Respostas:
0.0.0.0
não é um endereço IP válido. RFC1700 (a) afirma que0.0.0.0/8
(0.anything.anything.anything
) é reservado apenas como endereço de origem.Normalmente, você verá sistemas e aplicativos vinculando portas a
0.0.0.0
o que significa que a porta é acessível a partir de qualquer interface.Eu não estou familiarizado com o VxWrks, mas eu diria que existe uma maneira de especificar um IP local para fazer a interface com outros dispositivos de computador.
O WindRiver tem uma variedade de manuais sobre como configurar o IP.
fonte
0.0.0.0
é válido apenas como fonte , então, como as portas estão ligadas a0.0.0.0
acessível a todos? Tenho certeza que estou perdendo um detalhe, mas isso parece uma contradição.0.0.0.0
é uma coisa no nível da API para aceitar pacotes / conexões endereçadas a qualquer endereço configurado localmente. Não envolve pacotes endereçados a0.0.0.0
viajando para qualquer lugar no nível do protocolo.0.0.0.0
é tratado como uma string vazia. Se você configurar seu servidor para aceitar conexões de0.0.0.0
então ele vai aceitar conexões de qualquer endereço IP - isso é o que0.0.0.0
significa. Se você não se liga a0.0.0.0
então, seu servidor APENAS aceitará conexões de um único endereço IP e recusará conexões de quaisquer outras máquinas na rede. Pense na ligação não-0.0.0.0 como uma espécie de firewall embutidoVocê pode enganar o seu PC para pensar que o dispositivo tem um endereço IP real. Mas você precisa do endereço físico (também conhecido como o endereço MAC), o thingy com 6 campos de dois hexa- dígitos. Você faz isso adicionando-o à sua tabela de resolução de arp. No Windows, abra um terminal cmd e use arp.
Claro, você precisa de um endereço IP único e em sua rede. Caso contrário, a pilha irá redirecionar para outro local. Se você chegar a este ponto, você deve ser capaz de acessar o dispositivo. A infraestrutura de rede será roteada de acordo com o endereço físico.
No Linux é praticamente o mesmo. Abra um terminal, use arp.
Pode não funcionar !! Alguns dispositivos respondem apenas ao seu próprio IP. Mas eu estou supondo que não é o seu caso.
fonte
o
0.0.0.0
O endereço IP é bom, mas imagino que alguma outra coisa mudou na rede em que o dispositivo está ligado para bloquear o tráfego de rede com configuração zero, permitindo que o software de diagnóstico se conecte facilmente a esse dispositivo.Como outros, declarar em sua resposta
0.0.0.0
é um endereço IP não roteável usado com freqüência pelo software para vincular qualquer endereço IP em todas as interfaces de rede de um dispositivo. Isso basicamente significa:Então, se o dispositivo usa DHCP - para obter seu próprio endereço IP para suas interfaces conectadas - e recebe um endereço atribuído de
1.2.3.4
então você pode se conectar a esse dispositivo em1.2.3.4
. E se esse endereço mudar para5.6.7.8
o dispositivo ficará feliz em permitir que você se conecte a ele via5.6.7.8
.o
0.0.0.0
Parece ser algo que você descobriu, mas não é a causa do problema. Em vez disso, eu sou minha opinião, o problema que você tem é revelado quando você declara:Primeiro, isso parece estranho. Por que você precisa alterar o endereço IP local da sua máquina para se conectar ao dispositivo VxWorks? Você não deve se conectar diretamente ao endereço IP do dispositivo?
Bem, quando você diz isso, tudo o que consigo pensar é que o dispositivo - e o software de diagnóstico - pode operar usando algum tipo de rede de configuração zero configuração. Ou seja, o dispositivo transmite na rede e o software de diagnóstico foi projetado para procurar essas transmissões de dispositivo para ajudá-lo a se conectar ao dispositivo sem saber o endereço IP exato.
Esse tipo de coisa de rede de configuração zero “autoconfigurável” é uma conveniência até se tornar uma dor de cabeça.
Meu primeiro palpite é que você pode se conectar diretamente ao dispositivo se puder determinar qual endereço IP foi atribuído a ele. E pensando ainda mais, aposto que a razão pela qual você poderia se conectar a ela no passado - mas não agora - pode ter a ver com alguma alteração de rede que bloqueou as portas que o dispositivo rede de configuração zero a configuração está sendo transmitida. Qual porta pode ser? Não tenho certeza. Mas se o tráfego com configuração zero não estiver sendo roteado pela rede, é por isso que você não pode se conectar ao dispositivo e ao
0.0.0.0
Endereço IP não tem nada a ver com isso.fonte
0.0.0.0
é um endereço não rotativo. Não há nenhuma maneira que você possa rotear para isso porque "realmente não existe", ou, na verdade, "pode existir em muitos lugares".Pode ter significados ligeiramente diferentes dependendo se é um host ou uma rota.
Como rota, que não é aplicável neste caso, significa "rota padrão" que, sem instrução adicional, significa o gateway padrão ou "qualquer uma das minhas rotas", ou semelhante a
127.0.0.1
Como anfitrião, mais notavelmente no seu caso, também é; como explicado na Wikipedia :
Assumindo que geralmente usa DHCP, algumas coisas para tentar, em vez de uma redefinição completa - 'desligue-a & amp; novamente "ou apenas desconecte a rede, espere um minuto, conecte-a novamente. Talvez seja só pedir um novo endereço DHCP.
Além disso, é claro, certifique-se de que ele possa realmente ver seu servidor DHCP.
fonte