[an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive]
 
[an error occurred while processing this directive] [an error occurred while processing this directive]
Skåne Sjælland Linux User Group - http://www.sslug.dk Home   Subscribe   Mail Archive   Forum   Calendar   Search
MhonArc Date: [Date Prev] [Date Index] [Date Next]   Thread: [Date Prev] [Thread Index] [Date Next]   MhonArc
 

Traceroute modtager ikke ICMP destination unreachable



Hej igen

Jeg er kommet lidt længere med min portering men er stødt på et problem.

Det er et traceroute library til Java (skrevet med JNI), jeg er ved at
lave, og Windows versionen virker fint, men Linux versionen modtager
ikke sin 'ICMP destination unreachable' besked fra destinationen. Den
modtager godt nok 'ICMP time exceeded' fra alle hosts på sin vej.

Jeg har sniffet hvad Windows versionen og hvad /usr/sbin/traceroute
sender og jeg kan se at ingen af dem sætter 'dont fragment' flaget i IP
headeren, men det gør min version. /usr/sbin/traceroute bygger sin egen
IP header (set med 'strace'):

<snip>
socket(PF_INET, SOCK_RAW, IPPROTO_RAW)  = 4
setsockopt(4, SOL_SOCKET, SO_SNDBUF, [40], 4) = 0
setsockopt(4, SOL_IP, IP_HDRINCL, [1], 4) = 0
</snip>

...og det vil jeg helst undgå, men jeg kan ikke finde nogen socket
options til at ændre på flagene. Nogen der kan sige mig om det virkelig
er fragmenterings flaget, som er den skyldige ?
Eller om der er anden udvej for at ændre flaget end at bygge sin IP
header selv ?


 
Home   Subscribe   Mail Archive   Index   Calendar   Search

 
 
Questions about the web-pages to <www_admin>. Last modified 2007-09-01, 02:01 CEST [an error occurred while processing this directive]
This page is maintained by [an error occurred while processing this directive]MHonArc [an error occurred while processing this directive] # [an error occurred while processing this directive] *