Technical data

ip(7P) Protocols SunOS 5.5
These options take a struct ip_mreq as the parameter. The structure contains a multicast
address which has to be set to the CLASS-D IP multicast address, and an interface
address. Normally the interface address is set to INADDR_ANY which causes the kernel
to choose the interface to join on.
IP_MULTICAST_IF The outgoing interface for multicast packets. This option
takes a struct in_addr as an argument and it selects that
interface for outgoing IP multicast packets. If the address
specified is INADDR_ANY it will use the unicast routing
table to select the outgoing interface (which is the default
behavior.)
IP_MULTICAST_TTL Time to live for multicast datagrams. This option takes an
unsigned character as an argument. Its value is the TTL that
IP will use on outgoing multicast datagrams. The default is
1.
IP_MULTICAST_LOOP Loopback for multicast datagrams. Normally multicast
datagrams are delivered to members on the sendinghost.
Setting the unsigned character argument to 0 will cause the
opposite behavior.
The multicast socket options can be used with any datagram socket type in the Internet
family.
At the socket level, the socket option SO_DONTROUTE may be applied. This option
forces datagrams being sent to bypass routing and forwarding by forcing the IP Time To
Live field to 1 (meaning that the packet will not be forwarded bu routers).
Raw IP datagrams can also be sent and received using the TLI connectionless primitives.
Datagrams flow through the IP layer in two directions: from the network up to user
processes and from user processes down to the network. Using this orientation,IP is lay-
ered above the network interface drivers and below the transport protocols such as UDP
and TCP. The Internet Control Message Protocol (ICMP) is logically a part of IP. See
icmp(7P).
IP provides for a checksum of the header part, but not the data part of the datagram. The
checksum value is computed and set in the process of sending datagrams and checked
when receiving datagrams.
IP options in received datagrams are processed in the IP layer according to the protocol
specification. Currently recognized IP options include: security, loose source and record
route (LSRR), strict source and record route (SSRR), record route, and internet timestamp.
The IP layer will normally act as a router (forwarding datagrams that are not addressed
to it etc) when the machine has two or more interfaces that are up. This behavior can be
overridden by using ndd(1M) to to set the /dev/ip variable ip_forwarding. The value 0
means do not forward, 1 means forward and 2 gives you the default behavior of forward-
ing when there are two or more "up" interfaces.
7P-146 modified 3 Jul 1990