Reputation: 560
I am looking into IP Packet structure and I was wondering how the Operating Systems do generate IP identification numbers. I am sure that different platforms will have different algorithms.
I will be thankful if anyone can point out to some solid references to understand the details. Thanks
Upvotes: 2
Views: 5749
Reputation: 91
I would believe that choosing a random number for the IP Frag Id lessens the vulnerability to spoofing attacks. But I suppose it's not that simple
A couple references: unique identification requirement, high data rate issue, and vulnerability issues
Upvotes: 1
Reputation: 22261
If you want to know how operating systems implement things, just look at the source code for one of the several available free operating systems. In this case, the code you're looking for is in Linux's __ip_select_ident function.
It looks like it keeps some state information (basically a counter) that is per-peer (per-destination-address), but it also has a fallback algorithm in case looking up this state information fails.
Upvotes: 3