title: Track a packet as it goes through the kernel (linux)
body: <p>I have two machines which are set up to use Ip-Security and machine A (lets call them A and B) has a socket which is bound to a particular UDP port on the local machine and it polls it frequently to see if anything is received on it.</p>
  
  <p>When I disable Ip-security, the data between the two machines goes through fine and I send and receive the packets fine. But when Ip-Security is enabled, the packet doesn't get to that socket on machine A sent by machine B.</p>
  
  <p>I do a <code>tcpdump</code> on both the machines and I can see the (encrypted) packet being sent out from machine B and being received on machine A. But after that, the packet goes to the kernel and somewhere either in the decryption of the packet or at some other phase, the packet is dropped.</p>
  
  <p>I want to be able to trace the packet as it goes through the kernel and to see where it is dropped. Is there some <code>/proc</code> that I can use for this purpose? The other method I can think of is to insert debug statements all over the kernel and recompile it and then try sending the packet again and going through the debug.</p>
  
  <p>Thanks and sorry for the long message but it was necessary. </p>