|
|
Installing and Administering Internet Services: HP 9000 Networking > Chapter 9 Configuring mroutedConfiguring mrouted |
|
When the mrouted daemon is started, it automatically reads the default ASCII text configuration file /etc/mrouted.conf. You can override the default configuration file by specifying an alternate file when invoking mrouted; refer to “Starting mrouted”. If mrouted.conf is changed while mrouted is running, you can issue the HP-UX command kill -HUP to signal mrouted to reread the configuration file. By default, mrouted automatically configures itself to forward on all multicast-capable interfaces, excluding the loopback "interface," that have the IFF_MULTICAST flag set. Therefore, it is not necessary to explicitly configure mrouted (that is, the mrouted.conf file need not exist), unless you need to configure tunnel links, change the default operating parameters, or disable multicast routing over a specific physical interface. This section describes the statements that can be defined in the /etc/mrouted.conf configuration file. mrouted supports five configuration commands: phyint, tunnel, cache_lifetime, pruning, and name. Associated with each command are one or more options. The syntax of each command is shown below.
The phyint command can be used to disable multicast routing on the physical interface identified by local IP address local-addr (see figure below), or to associate a non-default metric or threshold with the specified physical interface. The local IP address local-addr may be alternatively replaced by the interface name, such as lan0. If phyint is attached to multiple IP subnets, use the altnet option to describe each additional subnet (one altnet option for each subnet). The tunnel command can be used to establish a tunnel link between local IP address local-addr and remote IP address remote-addr (see figure below). It can also be used to associate a non-default metric or threshold value with that tunnel. The local IP address local-addr can be replaced by the interface name, such as lan0. The remote IP address remote-addr can be replaced by a host name, but only if the host name has a single IP address associated with it. Before a tunnel can be used, the tunnel must be set up in the mrouted configuration files of both mrouted routers participating in the tunnel. Note that, with mrouted 3.8, the srcrt option is no longer supported. (It provided backwards compatibility with older versions of mrouted that implemented IP multicast datagram encapsulation using IP source routing.)
The metric is the cost, or overhead, associated with sending a datagram on the given interface or tunnel, and is used primarily to influence the choice of routes over which the datagram is forwarded; the larger the value, the higher the cost. Metrics should be kept as small as possible since mrouted cannot route along paths with a sum of metrics greater than 31. In general, you should use a metric value of 1 for all links unless you are specifically attempting to force traffic to take another route. In this case, the metric of the alternate path should be the sum of the metrics on the primary path + 1. The default value is 1. The threshold is the minimum IP time-to-live (TTL) required for a multicast datagram to be forwarded to the given interface or tunnel. It controls the scope of multicast datagrams. If the TTL value in the datagram is less than the threshold value, the datagram is dropped; if the TTL is greater than or equal to the threshold, the packet is forwarded. The default threshold is 1. The TTL of forwarded packets is only compared to the threshold, it is not decremented by the threshold. The TTL is set by the application that initiates the IP multicast datagram and typically represents the number of subnets, or hops, that the datagram will need to traverse to reach its destination. Every multicast router decrements the TTL by 1. We recommend that you use the default threshold value unless you have a specific need to set it otherwise. In general, all interfaces connected to a particular subnet or tunnel should use the same metric and threshold values for that subnet or tunnel. The rate_limit option allows the network administrator to specify a certain bandwidth in Kbits/second which would be allocated to multicast traffic. The default value is 500Kbps on tunnels and 0 (unlimited) on physical interfaces. The boundary option allows an interface to be configured as an administrative boundary for the specified boundary-name or scoped-addr (scoped address). More than one boundary option can be specified in phyint and tunnel commands. Packets belonging to the scoped address, which is an IP multicast group address, will not be forwarded on this interface. mask-len indicates the number of leading 1s in the mask applied (that is, bitwise logically ANDed) to the scoped address. For example, the statement boundary 239.2.3.3/16 would result in the mask 255.255.0.0 being logically ANDed with 239.2.3.3 to isolate the first two octets, 239.2, of the scoped address. Therefore, all IP multicast addresses beginning with 239.2 will not be forwarded on the specified interface. The primary use of the boundary option is to allow concurrent use of the same IP multicast address(es) on downstream subnets without interfering with multicast broadcasts using the same IP multicast address(es) on subnets that are upstream from the mrouted gateway. The cache_lifetime value determines the amount of time that a cached multicast route remains in the kernel before timing out. This value is specified in seconds and should be between 300 (5 minutes) and 86400 (24 hours). The default value is 300. The pruning off command explicitly configures mrouted to act as a "non-pruning" router. When pruning is off, IP multicast datagrams are forwarded to leaf subnets of the broadcast routing tree even when those leaf subnets do not contain members of the multicast destination group. Non-pruning mode should be used only for testing. The default mode for pruning is on. The name command enables you to assign a name (boundary-name) to a boundary (a scoped-addr/mask-len pair), which can make configuration easier. mrouted will terminate execution if it has less than two enabled virtual interfaces (vifs), where a vif is either a physical multicast-capable interface or a tunnel. It logs a warning if all of its vifs are tunnels. If this happens, we recommend that you replace that configuration with more direct tunnels. |
|