Come fare scp per usare gli indirizzi ipv6?


26

Quando provo a usare scp su indirizzi IPv6 ottengo questo:

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

Con SCP tutto ciò che ho mai ricevuto è

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

usando questo ottengo un login nella mia scatola senza intoppi

ssh osis@::1

Risposte:


42

scprichiede una sintassi speciale. L'indirizzo IPv6 deve essere racchiuso tra parentesi, che devono quindi essere salvate. Quindi nel tuo esempio sarebbe simile a questo:

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

Altrimenti, si pensa che il primo punto ":" sia il separatore tra il file e le parti dell'indirizzo che si tradurrebbe in

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

Nel tuo esempio con l'ip ::1viene interpretato come se volessi ssh sull'host ''(vuoto).


grazie per la tua risposta, questa informazione mancava in qualche modo a man scp; man ssh
Osis

2
Considera di inviare una pagina man aggiornata, quindi puoi dire: ho aiutato.
Martin Owens -ottoco-

2
Quando usi il flag -6, puoi semplicemente digitare localhost invece di :: 1 (che è l'indirizzo IPv6 per localhost) per evitare le parentesi e quindi qualsiasi necessità di sfuggire a qualcosa sulla shell:scp -6 osis@localhost:/home/osis/test.file ./test.file
freddyb

1
Non dovresti usare indirizzi IPv6, dovresti usare nomi DNS.
Anders,

0

Il comando sopra non ha funzionato per me, l'errore che ho ricevuto era dovuto all'indirizzo v6 è stato permesso di prendere il percorso.

Non è necessario utilizzare la barra rovesciata "\". Come nell'esempio sopra riportato, il comando funzionerà.

scp -6 osis@[2001:db8:0:1]:/home/osis/test.file ./test.file
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.