I have several network cards on my filer, each with its own subnet - If I am on a subnet that the cards are not defined for, how does the filer know which subnet/card to send the information out on ?
Mark Fowle Caterpillar/BCP
This decision is made by the routing table. The routing table is built primarily in 3 ways. Static routes (like the default route and interface routes), ICMP redirects, and if used routing protocols like RIP. The filer will look at the routing table to decide the first hop for the reply.
To views your route table, try netstat -rn.
Hope this helps.
-- Adam Fox NetApp Professional Services, NC adamfox@netapp.com
I have several network cards on my filer, each with its own subnet - If I am on a subnet that the cards are not defined for, how does the filer know which subnet/card to send the information out on ?
There are two ways the packet is routed: 1) By consulting the routing table. 2) By sending the packet out the same interface to the same node that the "request" packet came from.
An example of #1 would be pinging the client from the filer. Unless there is a static route for subnet D, the default route will be used.
An example of #2 would be the response to an NFS read request. Let's say the previous hop for the read request from the client was router R which sent the packet to the filer via the interface on subnet B. The filer would then send the read response to the client by sending it out interface B to router R.
I have several network cards on my filer, each with its own subnet - If I am on a subnet that the cards are not defined for, how does the filer know which subnet/card to send the information out on ?
This decision is made by the routing table ... The filer will look at the routing table to decide the first hop for the reply.
Not usually true, at least for filers. Normally, the filer simply takes the source and destination addresses (both IP and MAC) from the request and reverses them for the reply, sending the reply via the same interface on which the request was received. The only cases in which use of the routing table is required are when the filer initiates an action on its own, such as sending autosupport e-mail, an SNMP trap, a ping from the console, etc.
The routing table is built primarily in 3 ways. Static routes (like the default route and interface routes), ICMP redirects, and if used routing protocols like RIP.
Filers have a very limited implementation of RIP -- they listen to it only to determine availability of routers identified as candidates for use as defaults. A filer won't learn a new default route via RIP, nor will it pay any attention to non-default routes.
I'm not sure about ICMP redirects, but I wouldn't be surprised if they are ignored.
Finally, static routes in the normal sense aren't really supported. The static routes which are added as a side-effect of defining interfaces are there, but not an explictly defined static route via an arbitrary router. You can define a default route, but it's not quite static -- if there's also an /etc/dgateways file, the router may chance the "static" default route to something else listed in that file, depending on info gleaned from RIP.
The section on Routing in the "Network Administration" chapter of the System Administrator's Guide might be interesting supplemental reading.
-- Karl Swartz Network Appliance Engineering Work: kls@netapp.com http://www.netapp.com/ Home: kls@chicago.com http://www.chicago.com/~kls/
I'm not sure about ICMP redirects, but I wouldn't be surprised if they are ignored.
They are not ignored.
Finally, static routes in the normal sense aren't really supported. The static routes which are added as a side-effect of defining interfaces are there, but not an explictly defined static route via an arbitrary router. You can define a default route, but it's not quite static -- if there's also an /etc/dgateways file, the router may chance the "static" default route to something else listed in that file, depending on info gleaned from RIP.
Static routes can be added via the 'route' command.