Como permitir a transmissão UDP entre interfaces em um Cisco ASA 5506-X

5

Eu tenho um CISCO ASA 5506-X com 4 interfaces configuradas e um conjunto de listas de acesso, etc. Ele é configurado via CLI e está sendo executado no modo roteado, não é transparente. Tudo está correndo bem, mas agora tenho um problema que ainda não consegui resolver:

Uma das interfaces contém uma sub-rede (192.168.2. *) com dispositivos que enviam uma transmissão UDP para descobrir outro tipo de dispositivo. Esses outros dispositivos estão em outra sub-rede em outra interface (192.168.3. *). A transmissão do udp é global (255.255.255.255) em uma determinada porta.

Eu quero que a transmissão global UDP enviada em 192.168.2. * também seja enviada para 192.168.3. * - e para permitir o caminho de volta também, é claro.

Em outros dispositivos Cisco, eu já descobri que é possível fazer isso com os comandos ip helper-address e ip forward-protocol - mas os modelos ASA não suportam esses, até onde eu posso ver.

Então, como obtenho a transmissão global UDP pelas interfaces?

    
por Steffen Müller 15.12.2015 / 11:22

2 respostas

3

Acho que os problemas aqui são que você entendeu mal o que significa 255.255.255.255. Não é um "Broadcast global". A definição do RFC ( link ):

"The address 255.255.255.255 denotes a broadcast on a local hardware network, which must not be forwarded. This address may be used, for example, by hosts that do not know their network number and are asking some server for it. Thus, a host on net 36, for example, may:

  • broadcast to all of its immediate neighbors by using 255.255.255.255
  • broadcast to all of net 36 by using 36.255.255.255

No seu caso, um host 192.168.3.0/24 está enviando uma transmissão para 255.255.255.255 e está dizendo que por favor envie para todos os hosts em 192.168.3.0/24. Isto é o mesmo que enviar um pacote para 192.168.3.255. Se um host em .3 quiser enviar uma transmissão para .2, precisará enviar um pacote para 192.168.2.255. Ter transmissões de .3 retransmitidas para .2 é basicamente dizer que você deseja torná-las a mesma sub-rede, mantendo-as como sub-redes diferentes. (o outro nome comum para uma sub-rede é um "domínio de broadcast")

O que os comandos ip helper e ip forward-protocol e ASAs dhcprelay fazem é capturar o pacote broadcast e encaminhá-lo como um pacote unicast para um pacote específico hospedeiro. normalmente um servidor DHCP remoto, mas existem outros usos. Isso é explicitamente indicado no primeiro parágrafo do documento Checkpoint vinculado na resposta anterior. Pode ser pensado como um tipo de NAT. ou seja, o endereço de destino (255.255.255.255) é alterado para um IP unicast especificado, 192.168.3.10. e depois roteado como um pacote unicast normal. Isso funciona muito bem para o DHCP e permite que o servidor DHCP esteja em uma rede remota e ainda receba e responda a solicitações DHCP, mas, infelizmente, mesmo que o ASA tenha suportado os comandos ip helper e ip forward-protocol , ainda não foi possível resolver seu problema. O que o seu pedido viola o RFC e a definição do que é uma sub-rede.

A solução mais fácil aqui é mesclar as duas sub-redes em 192.168.2.0/23, em seguida, ligar as duas interfaces e usar o ASA no modo transparente para filtrar o tráfego entre os dois conjuntos de hosts.

Se você não puder fazer isso, precisará desenvolver uma maneira mais escalável para os dispositivos se encontrarem. Ou enviando broadcasts para suas sub-redes, respectivos endereços de broadcast (192.168.3.255 e 192.168.2.255) ou usando algum outro método de Descoberta. 255.255.255.255 não é uma solução escalável ou flexível.

    
por 20.12.2015 / 01:01
2

Não há nenhum recurso para isso na versão atual (provavelmente por motivos de segurança). Em vez disso, a Cisco implementou o "dhcprelay" e não forneceu meios para um encaminhamento de transmissão mais geral.

Sugiro adicionar outro dispositivo fora do ASA FW que possa desempenhar o mesmo papel (talvez um roteador Cisco ou uma máquina Linux). Você precisará permitir a "transmissão dirigida" através do ASA.

Você também pode considerar o uso de uma plataforma de firewall diferente que ofereça suporte a retransmissão de broadcast, por exemplo, um Checkpoint Firewall.

Veja aqui para ver como está configurado

    
por 17.12.2015 / 15:44