¿Por qué la dirección externa BGP es el puerto 1027?
Utilizo BGP para conectar el Router1 y el Router2, pero cuando muestro el progreso de TCP :
Router1>show tcp brief TCB Local Address Foreign Address (state) 4E976890 10.0.0.1.179 10.0.0.2.1027 ESTABLISHED
Decimos que el BGP se basa en el puerto TCP 179. ¿Por qué el BGP del Router2 está en el puerto 1027?
Answer
Un lado de la conexión tendrá un número de puerto arbitrario, el otro estará en 179.
Cisco Press «BGP Fundamentals» tiene una buena explicación ( link )
el vecino con la dirección IP más alta administra El enrutador que inicia la solicitud usa un puerto de origen dinámico, pero el puerto de destino es siempre el 179.
El ejemplo 1-1 muestra una sesión BGP establecida usando el comando
show tcp brief
para mostrar las sesiones TCP activas entre enrutadores. Observe que el puerto de origen TCP es 179 y el puerto de destino es 59884 en R1, y los puertos son opuestos en R2.
Example 1-1: Established BGP session RP/0/0/CPU0:R1# show tcp brief | exc "LISTEN|CLOSED" PCB VRF-ID Recv-Q Send-Q Local Address Foreign Address State 0x088bcbb8 0x60000000 0 0 10.1.12.1:179 10.1.12.2:59884 ESTAB R2# show tcp brief TCB Local Address Foreign Address (state) EF153B88 10.1.12.2. 59884 10.1.12.1.179 ESTAB
Esto es igual que cualquier otra conexión TCP: el lado abierto pasivo se sienta y espera en un número de puerto conocido; el lado abierto activo utiliza un puerto arbitrario. Esto hace que sea mucho más fácil administrar enlaces TCP de muchos a muchos.
Comentarios
Respuesta
Puertos de origen vs destino TCP.
Para dar un ejemplo diferente: los servidores HTTP escuchan en el puerto TCP 80. Por lo tanto, cuando se conecta a un servidor web, automáticamente utilizará TCP / 80 como puerto de destino. Sin embargo, el puerto de origen es aleatorio por encima de 1024.
Exactamente lo mismo sucede con BGP: el cliente (el enrutador que inicia la conexión) se conectará al puerto de destino TCP 179. Pero el puerto de origen para eso la conexión será un puerto alto aleatorio.
Respuesta
En general, el BGP
use el puerto TCP 179
como servicio BGP. el cliente conecta el puerto de servicio BGP no hay límite.
como el servidor SSH usa 22
como su puerto, no hay límite para el puerto del cliente.
iptables
?--dport 179
) y deje que el mecanismo de seguimiento de la conexión maneje las respuestas (--state ESTABLISHED
, por ejemplo?)