Как заставить scp использовать ipv6-адреса?
Когда я пытаюсь использовать scp через адреса IPv6, я получаю это:
scp -6 osis@::1:/home/osis/test.file ./test.file
ssh: Could not resolve hostname : Name or service not known
С scp все, что я когда-либо получаю,
ssh: Could not resolve hostname : Name or service not known
используя это, я получаю логин в мой ящик без помех
ssh osis@::1
2 ответа
scp
требует некоторого специального синтаксиса. Адрес IPv6 должен быть заключен в квадратные скобки, которые затем должны быть экранированы. Так что в вашем примере это будет выглядеть так:
scp -6 osis@\[2001:db8:0:1\]:/home/osis/test.file ./test.file
В противном случае первый двоеточие ':' считается разделителем между частями файла и адреса, что приведет к
ssh: Could not resolve hostname 2001: Address family for hostname not supported
В вашем примере с IP ::1
это интерпретируется как если вы хотите SSH к хосту ''
(Пробел).
Вышеприведенная команда не работает для меня, ошибка, которую я получил, была вызвана тем, что адрес v6 был разрешен для пути.
Не нужно использовать обратную косую черту "\" . В соответствии с приведенным выше примером команда будет работать.
scp -6 osis@[2001:db8:0:1]:/home/osis/test.file ./test.file