Annotation of embedaddon/libnet/doc/RAWSOCKET_NON_SEQUITUR, revision 1.1.1.1

1.1       misho       1: ===============================================================================
                      2:     $Id: RAWSOCKET_NON_SEQUITUR,v 1.2 2004/01/03 20:31:00 mike Exp $
                      3:     LIBNET 1.1 (c) 1998 - 2004 Mike D. Schiffman <mike@infonexus.com>
                      4:                                http://www.packetfactory.net/libnet
                      5: ===============================================================================
                      6: 
                      7:     Raw sockets are horribly non-standard across implementations.  Here is
                      8:     an incomplete list of some of the differences (corrections welcomed):
                      9: 
                     10:     Linux 2.2+:
                     11: 
                     12:     IP fragmentation:       performed if packet is larger than MTU
                     13:     IP checksum:            always filled in
                     14:     IP total length:        always filled in
                     15:     IP ID:                  filled in when zero
                     16:     IP source address:      filled in when zero
                     17:     IP destination address: filled in when zero
                     18:     Max packet size before kernel complains: 1500 bytes
                     19: 
                     20:     Solaris 2.6+:
                     21: 
                     22:     IP fragmentation bits:  can't specify 
                     23:     IP fragmentation:       performed if packet is larger than MTU
                     24:     IP DF bit:              always set
                     25:     IP checksum:            always filled in
                     26:     Max packet size before kernel complains: ?
                     27: 
                     28:     OpenBSD 2.8+:
                     29: 
                     30:     IP fragmentation:       performed if packet is larger than MTU
                     31:     Max packet size before kernel complains: 8192 bytes
                     32: 
                     33:   Solaris,
                     34:     for example, has terrible support for this packet interface.  Older OpenBSD
                     35:     versions and recent FreeBSD versions have the BSD_BYTE_SWAP issue where
                     36:     the ip_len and ip_frag fields need to be in little endian order.  Linux
                     37:     apparently doesn't allow for the injection of broadcast IP datagrams.
                     38:     Whenever complete control over the IP header is desired, use the link
                     39:     layer API.
                     40: 
                     41: EOF

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>