Compatibilidade do cliente DHCP SRX com o HP Procurve DHCP Relay

10

Estou tentando inicializar a configuração em alguns Juniper SRX100s e estou tendo alguns problemas de DHCP.

Especificamente, estou conectando a porta 0/0 (fe-0/0/0 no software) à minha rede existente, onde o DHCP funcionou de maneira confiável para praticamente todos os outros dispositivos que usei. Os SRX100s não estão recebendo endereços DHCP. O SRX100 é uma configuração padrão pronta para uso quando estou tentando isso.

Trouxe um dos dispositivos para minha casa e conectei-o à minha rede doméstica e ele obteve um endereço IP na minha rede doméstica via DHCP sem problemas.

A rede do meu escritório possui um comutador Procurve 1400 (apenas camada 2) na área de trabalho, ligado a um telefone IP Polycom IP670 (atua como um comutador simples de camada 2), ligado a um comutador Procurve 3500yl que atua como roteador da rede com "ip endereço auxiliar 1.1.1.1 "na interface vlan apontando para o servidor DHCP para retransmissão DHCP.

Alguém tem alguma experiência em obter um cliente DHCP SRX obtendo um endereço IP por meio de um Procurve (executando o software K.15.09.0012 ... embora o problema tenha existido em várias versões de firmware no Procurve). Os SRX100s parecem ter 11.2 quando saem da caixa, embora eu ache que o problema continua a existir quando atualizado para 12.1X44-D10.4.

Alguém tem alguma sugestão para solucionar isso? O Procurve 3500yl não parece admitir ter visto a solicitação do cliente DHCP vindo do SRX100, mas as informações de solução de problemas nos Procurves nesta área parecem limitadas. O servidor DHCP definitivamente não vê nenhum pacote DHCPDISCOVER chegando relacionado ao SRX100.

Minha solução alternativa foi configurar estaticamente um endereço IP nos SRX100s para colocá-los na rede e fazer o resto da minha configuração, mas o projeto em que estou trabalhando envolve enviar os SRX100s para locais remotos que não estão sob meu controle e, portanto, depende da obtenção confiável de endereços DHCP para conectividade, então eu realmente gostaria de solucionar esse problema e executar uma causa específica para saber o que procurar em potencial se isso acontecer em sites remotos.

Atualização: Eu tenho (para verificar novamente) o SRX100 com padrão de fábrica e o conecte diretamente a uma porta em um Procurve 3500yl e ainda estou vendo o problema, de modo que os telefones 1400 e IP670 são removidos da discussão. Eu incluí a saída tcpdump do SRX100 abaixo ... como você pode ver, está enviando o pacote DHCP mais simples possível, quando tende a sugerir que o problema está na função dhcp-relay no 3500yl. Não consigo encontrar nenhuma maneira de obter qualquer saída de depuração do 3500yl mostrando os pacotes que atingem a função dhcp-relay (com êxito ou não). Sugestões sobre como depurar essa função no 3500yl serão muito apreciadas.

tcpdump -n -s 0 -c 1 -vvv -r juniper.dhcp.pcap 
reading from file juniper.dhcp.pcap, link-type JUNIPER_ETHER (Juniper Ethernet)
17:49:11.538670 
Juniper PCAP Flags [Ext], PCAP Extension(s) total length 16
  Device Media Type Extension TLV #3, length 1, value Ethernet (1)
  Logical Interface Encapsulation Extension TLV #6, length 1, value Ethernet (14)
  Device Interface Index Extension TLV #1, length 2, value 34304
  Logical Interface Index Extension TLV #4, length 4, value 70
-----original packet-----
IP (tos 0x0, ttl 1, id 13874, offset 0, flags [none], proto UDP (17), length 328)
0.0.0.0.68 > 255.255.255.255.67: [udp sum ok] BOOTP/DHCP, Request from a8:d0:e5:1c:68:80, length 300, xid 0x643c9869, Flags [Broadcast] (0x8000)
  Client-Ethernet-Address a8:d0:e5:1c:68:80
  Vendor-rfc1048 Extensions
    Magic Cookie 0x63825363
    DHCP-Message Option 53, length 1: Discover
    END Option 255, length 0
    PAD Option 0, length 0, occurs 56
Jeff McAdams
fonte
Você já tentou conectar o SRX diretamente ao 3500yl para garantir que nem o 1400 nem o Polycom estejam filtrando as transmissões DHCPDISCOVER?
David Rothera
Eu não tenho, e isso não é uma má idéia. No entanto, ocasionalmente, conecto outros sistemas da mesma maneira e obtenho endereços DHCP nos outros sistemas, incluindo minhas máquinas de mesa que estão constantemente na rede dessa maneira, de modo que parece improvável que seja o problema. Vou ver se posso testar isso, no entanto.
22613 Jeff McAdams
Atualizado com algumas informações em minha resposta ... especificamente sobre como alterar o valor TTL das solicitações de DHCP no SRX, além de observar que eu abri uma RFE com a HP.
precisa

Respostas:

9

Abri um caso com a HP sobre esse problema. Depois de passar pela tecnologia inútil do Nível 1, a tecnologia do Nível 2 detectou com muita atenção algo que eu não tinha.

O SRX está enviando seu pacote DHCPDISCOVER com um TTL de 1. Aparentemente, o Procurve diminui o TTL e usa o TTL resultante no pacote retransmitido para o servidor DHCP. Nesse caso, o decremento deixa o TTL em 0, o que significa que o pacote cai no chão.

Isso está na especificação do relé DHCP / BOOTP, embora claramente cause interoperabilidade reduzida. Pedi à HPNetworking para tratar isso como um bug / RFE e alterar o comportamento. Nenhuma resposta imediata a essa solicitação no caso.

O SRX que envia o DHCPDISCOVER com um TTL de 1 também está provavelmente dentro das especificações, mas, novamente, uma opção de interoperabilidade reduzida, então planejo abrir um caso com o JTAC na mesma base.

Adicionarei mais informações sobre a resposta da Juniper e da HP assim que estiverem disponíveis.

Aliás, testei o comportamento do relé de um Cisco 4506 (versão de firmware não disponível imediatamente) e um Brocade / Foundry FastIron Edge X (acredito que o firmware 7.2 ou 7.3 não acredito ter acesso imediato para confirmar) e ambos lidam com retransmitindo a solicitação com TTL 1 sem problema.

ATUALIZAÇÃO Existe uma maneira de alterar o valor TTL que o SRX usa em suas solicitações DHCP, mas não de dentro do cliente JunOS ... é feito no SO Unix subjacente.

root@% sysctl -w net.inet.ip.mcast_ttl=64

Abri um RFE com a HP para tornar sua função de retransmissão mais resistente, mas ainda não recebi resposta deles se / quando isso será trabalhado.

Jeff McAdams
fonte
2

Pode ser difícil solucionar problemas quando você não sabe onde está o problema e você tem três dispositivos de três fornecedores antes de parecer ter alguma visibilidade (o SRX100, o 1400 e o IP670). Não consigo falar com dispositivos específicos, mas você nunca pode dar errado rastreando os pacotes. Como o ProCurve 1400 é um dispositivo não gerenciado, você precisará usar um toque de rede.

Você deseja capturar o tráfego nos seguintes locais (com base na sua declaração de que o 3500yl não está recebendo o pacote de descoberta):

  • Entre o SRX100 e o 1400.
  • Entre o 1400 e o IP670
  • Entre o IP670 e o 3500yl

Você pode fazer tudo isso na sua mesa e, enquanto um toque é perturbador enquanto você o conecta / desconecta, ele deve afetar apenas você e seus dispositivos.

Eu começaria no topo desta lista, porque deveria permitir que você capturasse o pacote de descoberta DHCP pelo menos uma vez e, em seguida, qualquer captura subsequente do pacote de descoberta DHCP pode ser comparada com essa para ver se há alguma modificação.

Você também pode capturar pacotes de descoberta DHCP de dispositivos que estão funcionando bem para verificar se há alguma diferença em relação ao pacote de descoberta enviado pelo SRX100.

Depois de saber onde o pacote está errado, você pode pesquisar especificamente na solução de problemas por que ele está errado naquele momento.

YLearn
fonte
Sim, ainda não segui essas etapas específicas, pois tenho bastante confiança de que o 1400 e o ip670 são confiáveis ​​apenas na camada 2 e, portanto, não mexem no tráfego DHCP. Eu acho que o problema é algum tipo de incompatibilidade entre o SRX e o 3500yl. Eu suspeito que o pacote está chegando ao 3500yl, mas não o está manipulando corretamente. Que eu não consigo fazer com que o 3500yl indique que ele viu o pacote, acho que é mais devido aos recursos limitados de depuração no 3500yl.
22613 Jeff McAdams
@JeffMcAdams, eu tenderia a concordar com essa avaliação, mas já fui surpreendido por questões estranhas antes. Como você pode mover a torneira nesses locais, todos da sua mesa, eu seguiria o pacote para garantir que as coisas estão funcionando conforme o esperado. Se você tivesse que se deslocar entre armários de rede, pisos, prédios ou locais, diria pular para onde está o problema e começar por aí. Além disso, obter um pacote de descoberta conhecido permitirá que você saiba se pode haver algo "extra" nele que o servidor DHCP não gosta (opção 82 ou outra coisa talvez).
YLearn
1

Embora você tenha testado o SRX em outro lugar:

  1. O SRX obtém um endereço com a mesma configuração exata em casa?
    • Isso deve significar que o seguinte não é um problema:
    • set security zones security-zone host-inbound-traffic system-services dhcp tem sido feito
    • Configuração básica da interface feita (interface bruta, tags vlan, interface na vlan correta, aquela vlan na
  2. A interface realmente aparece de maneira limpa no lado do Juniper?
    • show interfaces fe-0/0/0 extensive é seu amigo
    • (Eu sei que não é apropriado para isso, mas ainda assim ...) Para interfaces ópticas, verifique também os níveis de energia: show interfaces diagnostics optics ge-0/0/0
  3. Adicione um rastreamento ao cliente DHCP:
configurar
definir arquivo de opções de rastreamento dhcp dos serviços do sistema dhcp_client.log legível pelo mundo
definir serviços de sistema dhcp traceoptions sinalizador cliente
definir todos os traceoptions dhcp dos serviços do sistema
confirmar e sair

Em seguida, monitore o log ao abrir a interface monitor start dhcp_client.log. (Lembre-se de excluir a opção de rastreamento assim que terminar)

LapTop006
fonte
1. Sim, estou fazendo isso com as configurações padrão de quebra de lacre fora da caixa, tanto em casa quanto no escritório. A configuração padrão de fábrica inclui o dhcp de serviços do sistema de tráfego de entrada e host na interface fe-0/0 / 0.0 que estou usando. 2. Sim, a interface está limpa e, se eu estiver com informações de IP de configuração estáticas, ela funciona bem. 3. Editei a pergunta original com um tcpdump do pacote saindo ... Nunca vejo um pacote de retorno e nunca vejo o pacote atingir o servidor DHCP.
Jeff McAdams