Tengo una serie de archivos que necesito copiar a través de SCP a través de una VPN a un servidor Linux remoto cada noche. Los archivos no son grandes, estamos hablando de decenas de megabytes aquí, pero la copia del archivo casi siempre se detiene después de unos segundos. Al ejecutar el comando SCP con -vvv, veo lo siguiente una y otra vez durante el proceso de intento de copia:
debug2: channel 0: rcvd adjust 131072
debug2: channel 0: rcvd adjust 131072
debug2: channel 0: rcvd adjust 131072
¿Alguna idea? Veo que se hace esta pregunta en varios lugares, pero nunca hay respuestas. Cualquier ayuda sería apreciada.
Respuestas:
¿Estás permitiendo ICMP a través de la VPN? "La conexión TCP se detiene después de unos segundos" a menudo se traduce como " agujero negro PMTU ".
fuente
De manera similar a la respuesta de @ Gerald, esta página http://www.netheaven.com/pmtu.html ofrece una buena explicación de MTU Discovery y las opciones para enfrentar este problema.
También un documento técnico de Cisco que trata sobre la fragmentación de IP, MTU Discovery y MSS, todos relacionados con túneles VPN IPSec, pero es igualmente válido para situaciones similares. http://www.cisco.com/en/US/tech/tk827/tk369/technologies_white_paper09186a00800d6979.shtml
fuente
¿Está ejecutando la última versión de los servidores y clientes ssh que está utilizando? También recomendaría acceder a sus listas de correo electrónico sobre esto, ya que parece bastante oscuro.
fuente
Tuvimos problemas espurios similares con scp en algunos servidores Linux (Debian, 2.6.24-etchnhalf).
Pudimos eliminar los puestos desactivando la variable TCP tcp_sack ("reconocimientos selectivos de tcp") en los servidores remotos:
sysctl -w net.ipv4.tcp_sack=0
En Debian, tcp_sack está habilitado por defecto. Si leo http://www.frozentux.net/ipsysctl-tutorial/chunkyhtml/tcpvariables.html , no tendría sentido deshabilitar esta opción, pero en nuestro caso, ayudó.
Puede hacer que este cambio sea permanente agregando una línea
net.ipv4.tcp_sack=0
a /etc/sysctl.conf (en otros sistemas Linux YMMV).fuente
descubre tu MTU Path
configurar esa MTU para su conexión de red
(tenga en cuenta que esto es temporal)
fuente