Recientemente cambié mi enrutador por un Billion 7800VDOX, y noté algunos intentos de conexión a mi iMac desde direcciones externas. En la investigación descubrí que se había abierto un puerto uPnP en el enrutador con un rango de puertos 0-0 (interno y externo). Esto tiene el efecto, verificado con un escáner de puertos externo, de abrir TODOS los números de puerto en el enrutador y dirigirlos a El iMac. Eliminé la asignación y ejecuté Wireshark y capturé una solicitud de dirección externa al mismo tiempo que se restableció la asignación.
Frame 496: 102 bytes on wire (816 bits), 102 bytes captured (816 bits) on interface 0
Ethernet II, Src: Apple_d0:7e:eb (d4:9a:20:d0:7e:eb), Dst: BillionE_cb:49:27 (00:04:ed:cb:49:27)
Internet Protocol Version 4, Src: 192.168.1.131, Dst: 192.168.1.254
User Datagram Protocol, Src Port: 5353 (5353), Dst Port: 5351 (5351)
Source Port: 5353
Destination Port: 5351
Length: 68
Checksum: 0x8527 [validation disabled]
[Stream index: 0]
Port Control Protocol, Map Request
Version: 2
0... .... = R: Request
.000 0001 = Opcode: Map (1)
Reserved: 0
Requested Lifetime: 7200
Client IP Address: ::ffff:192.168.1.131
Map Request
Mapping Nonce: f88237920f8cd6c0a3765f39
Protocol: 6
Reserved: 0
Internal Port: 9
Suggested External Port: 0
Suggested External IP Address: ::ffff:xxx.181.81.112
Esto fue precedido por una solicitud SOAP para obtener la dirección IP externa del enrutador. Comprobando el puerto de origen (5353) con lsof encontré que es propiedad de mDNSResponder.
Mi suposición sobre lo que está sucediendo es que mDNSResponder está usando esto solo para obtener la dirección IP externa del enrutador, y lo hace usando una solicitud supuestamente inofensiva para mapear el puerto 0, que debería ser un puerto no válido. Sin embargo, el enrutador Billion trata esto como, ya sea por diseño o error de programación, como una solicitud para abrir todos los puertos. Desactivar uPnP en el enrutador resuelve el problema (aunque, como se señaló, esto no es realmente uPnP).
Alguien tiene alguna otra sugerencia?