Wie kann man scp dazu bringen, IPv6-Adressen zu verwenden?

26

Wenn ich versuche, scp über IPv6-Adressen zu verwenden, erhalte ich Folgendes:

scp -6 osis@::1:/home/osis/test.file ./test.file
ssh: Could not resolve hostname : Name or service not known

Mit scp bekomme ich nur noch

ssh: Could not resolve hostname : Name or service not known

hiermit bekomme ich ein Login in meine Box ohne Probleme

ssh osis@::1
Osis
quelle

Antworten:

42

scperfordert eine spezielle Syntax. Die IPv6-Adresse muss in eckigen Klammern angegeben werden, die dann maskiert werden müssen. In Ihrem Beispiel würde das so aussehen:

scp -6 osis@\[2001:db8:0:1\]:/home/osis/test.file ./test.file

Andernfalls wird angenommen, dass der erste Doppelpunkt ":" das Trennzeichen zwischen der Datei und den Adressteilen ist, was dazu führen würde

ssh: Could not resolve hostname 2001: Address family for hostname not supported

In deinem Beispiel mit der IP wird ::1es so interpretiert, als ob du zum Host ssh willst ''(leer).

Martin Owens -doctormo-
quelle
danke für deine antwort, diese
infos
2
Überlegen Sie, ob Sie eine aktualisierte Manpage einreichen möchten, dann können Sie sagen: Ich habe geholfen.
Martin Owens -doctormo-
2
Wenn Sie das Flag -6 verwenden, können Sie statt :: 1 (das ist die IPv6-Adresse für localhost) einfach localhost scp -6 osis@localhost:/home/osis/test.file ./test.file
eingeben
1
Sie sollten keine IPv6-Adressen verwenden, sondern DNS-Namen.
Anders
0

Der obige Befehl hat bei mir nicht funktioniert. Der Fehler, den ich aufgrund der v6-Adresse erhalten habe, wurde als Pfad angegeben.

Kein Schrägstrich "\" erforderlich. Wie im obigen Beispiel funktioniert der Befehl.

scp -6 osis@[2001:db8:0:1]:/home/osis/test.file ./test.file
Jobz
quelle