Tengo un servidor Linux y quiero encontrar la dirección IPv6 principal a través de una sola línea de comando.
Mi comando hasta ahora:
$ ip addr show dev eth0 | sed -e's/^.*inet6 \([^ ]*\)\/.*$/\1/;t;d'
que muestra:
2001:410:0:39:221:28ff:fe46:eef4
fe80::221:28ff:fe46:eef4
Pero solo quiero una ocurrencia , para que la salida lea:
2001:410:0:39:221:28ff:fe46:eef4
Respuestas:
mostrará sus direcciones IPv6.
fuente
% ip -6 addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 inet6 ::1/128 scope host valid_lft forever preferred_lft forever
... todavía greppableip -6 addr show dev eth0 | sed -n 's|^.*inet6 \([^ ]*/64\).*$|\1|p'
oip -6 addr show dev eth0 | awk '/inet6/{print $2}'
podría usarse como base y OP puede extenderlos / editarlos para su caso de uso específico./sbin/ip -6 addr | grep inet6 | awk -F '[ \t]+|/' '{print $3}' | grep -v ^::1 | grep -v ^fe80
La salida de se
/sbin/ip -6 addr | grep inet6
parece a esto:awk -F '[ \t]+|/' '{print $3}'
divide cada delimitador de configuración de línea en uno o más espacios en blanco o una barra diagonal. La parte que necesitamos son los $ 3.grep -v ^::1 | grep -v ^fe80
para excluir cualquier línea que comience con::1
ofe80
.fuente
Si desea una selección aleatoria de una dirección IPv6
Si desea la dirección IPv6 del nombre más común para el primer adaptador Ethernet
Si solo quieres la dirección
fuente
Use el siguiente comando para ver su dirección IP en Linux:
Normalmente, la dirección IPv6 se ve así
2001:5c0:9168::/48
. Si enfrenta algún conflicto en su IP, siga los pasos a continuación para configurar una dirección IP nuevamente:Luego, use el siguiente comando para agregar una nueva ip:
Luego, agregue la ip predeterminada a través de
Después de completar su instalación, simplemente reconfigure / reinicie sus servicios habilitados para IPv6, como Apache, SSH, etc.
fuente
ifconfig
está obsoleto en Linux y ya no debe usarse. Las distribuciones modernas de Linux ya ni siquiera lo instalan por defecto (a menos que algún paquete antiguo lo requiera).Con algunos pequeños ajustes, su intento original hubiera funcionado:
El gran cambio allí es la adición de la
-o
bandera que hace que las entradas se impriman, una por línea, lo que hace que sea más fácil pasarlas por encima.fuente
Primero, debe recordar que con IPv6 cualquier máquina puede tener varias direcciones IPv6, y pueden estar en redes separadas, y cualquiera de ellas podría usarse, dependiendo de dónde desee llegar.
Entonces, antes de que pueda responder la pregunta de cuál es su dirección IP de origen, debe decidir dónde está enviando el tráfico. Luego, puede pedirle a Linux que le diga qué dirección IPv6 será la fuente cuando envíe tráfico a ese destino.
Si lo envía a "Internet", simplemente elija una dirección IPv6 global al azar, por ejemplo, la dirección DNS pública de Google.
Esto le pide a Linux la ruta a ese destino. Perl analiza el resultado buscando
src
y luego imprime el siguiente campo.Al proporcionar un destino diferente, puede recibir una dirección de origen diferente:
fuente
fuente