Lo intenté de varias maneras, pero parecen ser confusos.
root@testt:~# curl localhost:8080
<h1>Hello world!</h1>
<p>Boom Bam Splat</p>
root@testt:~# curl ::1:8080
curl: (3) IPv6 numerical address used in URL without brackets
root@testt:~# curl [::1]:8080
curl: (3) [globbing] bad range specification in column 2
Respuestas:
Mirando las sugerencias, y el desglose de los errores comunes, en esta publicación de blog , tal vez debería intentarlo.
El
-g
parece ser la clave mágica para conseguir este trabajo. Como se explica en lacurl
página del manual:Y los
-6
medios para usar solo IPv6:Pero al leer esa descripción de funcionalidad, parece que
-6
realmente no es necesaria para una dirección IPv6 pura; solo si se usacurl
un nombre de host que tiene una dirección IPv4 e IPv6 conectada, por lo que preferiría el IPv6. Solo algo a tener en cuenta.fuente
OSX 10.13.3
: Esto funciona:$ curl "http://localhost:50710/file1.txt"
y esto no se$ curl -g -6 "http://[::1]:50710/file1.txt"
curva: (7) Error al conectarse a :: 1 puerto 50710: Conexión rechazada . Y se$ curl -V
muestraIPv6
como una característica (curl 7.58.0). Mis/etc/hosts
listas de archivos:::1 localhost
0.0.0.0.0.0.0.1
simplemente puedo hacerlocurl "http://[::1]:50710/file1.txt"
. Si agrego una-v
opción para salida detallada, veo en la salida: Intentando :: 1 ... * TCP_NODELAY set * Conectado a :: 1 (:: 1) puerto 52489 (# 0) - Por alguna razón, no lo hice No necesito la-g
opción.curl -v "http://localhost:52489/file1.txt"
. En el resultado que veo: Intentando :: 1 ... * TCP_NODELAY set * Connected to localhost (:: 1) port 52489 (# 0) - Ah, creo que es porque mi/etc/hosts
archivo resuelve el nombre "localhost" a ambos Dirección ipv4 e ipv6. Y si lo intento:curl -v "http://127.0.0.1:52489/file1.txt"
me sale un error de conexión rechazada.0.0.0.0.0.0.0.1
". En serio, no tienes idea de lo que estás hablando. Sugiero escribir una nueva pregunta explicando todo lo que explica en estos comentarios y ver si alguien puede ayudarlo. Consulte esta respuesta si lo desea. Pero si crees que0.0.0.0.0.0.0.1
es una dirección IPv6 válida, ya estás en mal estado.De "curl --manual", encontré esto:
o
Entonces, para la dirección que está preguntando, intente:
Sin embargo, es posible que desee ejecutar:
y vea si IPv6 aparece en la línea que dice "Características" (la tercera línea, sin contar las líneas adicionales del ajuste de palabras). Encontré que mi versión no. La página de descarga de cURL tiene varios enlaces para sistemas operativos, incluido el sitio de descarga curl 7.41.0 (que actualmente es la última versión) para Microsoft Windows. Esa página tiene múltiples ejecutables (disponibles para Microsoft Windows); El primero que encontré no era compatible con IPv6. Pero los dos descritos como "ipv6-sspi-spnego-winssl" (uno para x86 y otro para x64) sí: curl -V mostró IPv6. Así que tenga cuidado con el paquete que descarga.
fuente