Skip to main content
deleted 14 characters in body
Source Link
Philip Couling
  • 21.1k
  • 5
  • 65
  • 102

I understand that IP colisions are incredibly rare under IPv6. Most subnets are at least 64bit, meaning that the risk of true random collision is neglegable.

However there are circumstances where sources of real entropy are so limited (or broken) that the risk can rise significantly.

I read somewhere that on assigning an IP address, the host is supposed to use the neighbour discovery protocol to check whether the address exists and if so refuse to use it.

So my question is what does Linux do in this situation? If I have some software that wants to add an IP to the host, how could that software discover that the IP is taken? E.g. using the ip CLI?


There are two angles of this question that are not instinctually obvious to me and lead me to shy away from "works on my machine" approaches to discover an answer:

  1. Syntax stability and parsing the output.
  2. Timing and knowing how long to wait.

I understand that IP colisions are incredibly rare under IPv6. Most subnets are at least 64bit, meaning that the risk of true random collision is neglegable.

However there are circumstances where sources of real entropy are so limited (or broken) that the risk can rise significantly.

I read somewhere that on assigning an IP address, the host is supposed to use the neighbour discovery protocol to check whether the address exists and if so refuse to use it.

So my question is what does Linux do in this situation? If I have some software that wants to add an IP to the host, how could that software discover that the IP is taken? E.g. using the ip CLI?


There are two angles of this question that are not instinctually obvious to me and lead me to shy away from "works on my machine" approaches to discover an answer:

  1. Syntax stability and parsing the output.
  2. Timing and knowing how long to wait.

I understand that IP colisions are incredibly rare under IPv6. Most subnets are at least 64bit, meaning that the risk of true random collision is neglegable.

However there are circumstances where sources of real entropy are so limited (or broken) that the risk can rise significantly.

I read somewhere that on assigning an IP address, the host is supposed to use the neighbour discovery protocol to check whether the address exists and if so refuse to use it.

So my question is what does Linux do in this situation? If I have some software that wants to add an IP to the host, how could that software discover that the IP is taken? E.g. using the ip CLI?


There are two angles of this question that are not obvious to me and lead me to shy away from "works on my machine" approaches to discover an answer:

  1. Syntax stability and parsing the output.
  2. Timing and knowing how long to wait.
Became Hot Network Question
Spelling and grammar
Source Link
Toby Speight
  • 9.4k
  • 3
  • 32
  • 54

I understand that IP colisions are incredibly rare under IPv6. Most subnets are at least 64bit, meaning that the risk of true random collision is neglegable.

However ththere are circumstances where sources of real entropy are so limited (or broken) that the risk can rise significantly.

I read somewhere that on assigning an IP address, the host is supposed to use the neighbour discovery protocol to check ifwhether the IPaddress exists and if so refuse to use it.

So my question is what does Linux do in this situation? If I have some software that wants to add an IP to the host, how could that software discover that the IP is taken? E. Egg. using the ip CLI?


There are two angles of this question that are not instinsiclyinstinctually obvious to me and lead me to shy away from "works on my machine" approaches to discover an answer:

  1. Syntax stability and parsing the ouputoutput.
  2. Timing and knowing how long to wait.

I understand that IP colisions are incredibly rare under IPv6. Most subnets are at least 64bit, meaning that the risk of true random collision is neglegable.

However th are circumstances where sources of real entropy are so limited (or broken) that the risk can rise significantly.

I read somewhere that on assigning an IP, the host is supposed to use the neighbour discovery protocol to check if the IP exists and refuse to use it.

So my question is what does Linux do in this situation? If I have some software that wants to add an IP to the host, how could that software discover that the IP is taken. Eg using the ip CLI?


There are two angles of this question that are not instinsicly obvious to me and lead me to shy away from "works on my machine" approaches to discover an answer:

  1. Syntax stability and parsing the ouput
  2. Timing and knowing how long to wait

I understand that IP colisions are incredibly rare under IPv6. Most subnets are at least 64bit, meaning that the risk of true random collision is neglegable.

However there are circumstances where sources of real entropy are so limited (or broken) that the risk can rise significantly.

I read somewhere that on assigning an IP address, the host is supposed to use the neighbour discovery protocol to check whether the address exists and if so refuse to use it.

So my question is what does Linux do in this situation? If I have some software that wants to add an IP to the host, how could that software discover that the IP is taken? E.g. using the ip CLI?


There are two angles of this question that are not instinctually obvious to me and lead me to shy away from "works on my machine" approaches to discover an answer:

  1. Syntax stability and parsing the output.
  2. Timing and knowing how long to wait.
added 262 characters in body
Source Link
Philip Couling
  • 21.1k
  • 5
  • 65
  • 102

I understand that IP colisions are incredibly rare under IPv6. Most subnets are at least 64bit, meaning that the risk of true random collision is neglegable.

However th are circumstances where sources of real entropy are so limited (or broken) that the risk can rise significantly.

I read somewhere that on assigning an IP, the host is supposed to use the neighbour discovery protocol to check if the IP exists and refuse to use it.

So my question is what does Linux do in this situation? If I have some software that wants to add an IP to the host, how could that software discover that the IP is taken. Eg using the ip CLI?


There are two angles of this question that are not instinsicly obvious to me and lead me to shy away from "works on my machine" approaches to discover an answer:

  1. Syntax stability and parsing the ouput
  2. Timing and knowing how long to wait

I understand that IP colisions are incredibly rare under IPv6. Most subnets are at least 64bit, meaning that the risk of true random collision is neglegable.

However th are circumstances where sources of real entropy are so limited (or broken) that the risk can rise significantly.

I read somewhere that on assigning an IP, the host is supposed to use the neighbour discovery protocol to check if the IP exists and refuse to use it.

So my question is what does Linux do in this situation? If I have some software that wants to add an IP to the host, how could that software discover that the IP is taken. Eg using the ip CLI?

I understand that IP colisions are incredibly rare under IPv6. Most subnets are at least 64bit, meaning that the risk of true random collision is neglegable.

However th are circumstances where sources of real entropy are so limited (or broken) that the risk can rise significantly.

I read somewhere that on assigning an IP, the host is supposed to use the neighbour discovery protocol to check if the IP exists and refuse to use it.

So my question is what does Linux do in this situation? If I have some software that wants to add an IP to the host, how could that software discover that the IP is taken. Eg using the ip CLI?


There are two angles of this question that are not instinsicly obvious to me and lead me to shy away from "works on my machine" approaches to discover an answer:

  1. Syntax stability and parsing the ouput
  2. Timing and knowing how long to wait
added 2 characters in body
Source Link
Philip Couling
  • 21.1k
  • 5
  • 65
  • 102
Loading
Source Link
Philip Couling
  • 21.1k
  • 5
  • 65
  • 102
Loading