Cómo descubrir el tipo de NAT detrás de una interfaz determinada

Me gustaría descubrir el tipo de NAT (FullCone, Restricted Cone, Port Restricted cone, Symmetric) detrás de una interfaz de red determinada.

He probado diferentes herramientas (http://freshmeat.net/projects/jstun/, http://code.google.com/p/boogu/) pero informan resultados diferentes para la misma interfaz.

Estoy buscando una respuesta definitiva en Python (u otros lenguajes, la segunda opción es Java, si no hay nada más disponible).

Respuestas a la pregunta(3)

Su respuesta a la pregunta