diff --git a/app/Helpers/SshMultiplexingHelper.php b/app/Helpers/SshMultiplexingHelper.php index b0a832605..8a6856a2e 100644 --- a/app/Helpers/SshMultiplexingHelper.php +++ b/app/Helpers/SshMultiplexingHelper.php @@ -94,7 +94,9 @@ class SshMultiplexingHelper $muxPersistTime = config('constants.ssh.mux_persist_time'); $scp_command = "timeout $timeout scp "; - + if ($server->isIpv6()) { + $scp_command .= '-6 '; + } if (self::isMultiplexingEnabled()) { $scp_command .= "-o ControlMaster=auto -o ControlPath=$muxSocket -o ControlPersist={$muxPersistTime} "; self::ensureMultiplexedConnection($server); diff --git a/app/Models/Server.php b/app/Models/Server.php index f896541ad..54942f5fb 100644 --- a/app/Models/Server.php +++ b/app/Models/Server.php @@ -1221,4 +1221,9 @@ $schema://$host { return instant_remote_process($commands, $this, false); } + + public function isIpv6(): bool + { + return str($this->ip)->contains(':'); + } }