
En un túnel punto a punto, pude tener la misma IP dos veces. Parece un error, creo que podría estar relacionado con alguna representación interna de la máscara de red. Se puede reproducir con los pasos siguientes.
Creé un túnel tun como este:
ip tuntap add dev tun3 mode tun user alice group alice
ip address add 10.8.0.1 peer 10.8.0.2/32 dev tun3
Enumeré la dirección:
$ ip address list dev tun3
…
inet 10.8.0.1 peer 10.8.0.2/32 scope global tun3
…
Como puede ver, parece que no hay ninguna máscara de red asociada con 10.8.0.1. Pero ifconfig informa /32:
$ ifconfig tun3
…
inet 10.8.0.1 netmask 255.255.255.255 destination 10.8.0.2
…
Si uso iproute2
para agregar la misma dirección 10.8.0.1/32, no hay ningún error, la dirección se agrega y luego se enumera.
# ip address add 10.8.0.1/32 dev tun3
$ ip address list dev tun3
…
inet 10.8.0.1 peer 10.8.0.2/32 scope global tun3
…
inet 10.8.0.1/32 scope global tun3
…
La pregunta es, ¿por qué? Esperaba un:
RTNETLINK answers: File exists
En caso de que te preguntes por qué intentaría esto, estaba tratando de ayudar conesta pregunta.
Respuesta1
En lugar de utilizarlo ifconfig
para la asignación de IP, puede seguir utilizando ip
el paquete iproute2. Su manual describe esto bastante claramente:
man ip-address
: "…
DIRECCIÓN del parla dirección del punto final remoto para interfaces pointopoint. Nuevamente la DIRECCIÓNpuede ir seguido de una barra diagonal y un número decimal, que codifica la longitud del prefijo de red.Si se especifica una dirección de igual, la dirección local no puede tener una longitud de prefijo.El prefijo de red está asociado con el par en lugar de con la dirección local.
…"