A couple of weeks ago, when I was having trouble with my web server, I noticed that I don't have a localhost route:
]$ cat hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 lumcweb localhost.localdomain localhost 192.168.0.33 lumcweb.localdomain lumcweb 192.168.0.25 MossLinux MossLinux 24.94.162.101 smtpserver ]$ netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192.168.0.0 * 255.255.255.0 U 0 0 0 eth1 169.254.0.0 * 255.255.0.0 U 0 0 0 eth1 default 192.168.0.1 0.0.0.0 UG 0 0 0 eth1
Yet my hosts files includes it. This server is running Fedora Core 2.
I can also ping the localhost just fine:
PING lumcweb (127.0.0.1) 56(84) bytes of data. 64 bytes from lumcweb (127.0.0.1): icmp_seq=0 ttl=64 time=0.071 ms 64 bytes from lumcweb (127.0.0.1): icmp_seq=1 ttl=64 time=0.063 ms 64 bytes from lumcweb (127.0.0.1): icmp_seq=2 ttl=64 time=0.060 ms 64 bytes from lumcweb (127.0.0.1): icmp_seq=3 ttl=64 time=0.063 ms
Should I be concerned?
Jon Moss wrote:
A couple of weeks ago, when I was having trouble with my web server, I noticed that I don't have a localhost route:
]$ cat hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 lumcweb localhost.localdomain localhost 192.168.0.33 lumcweb.localdomain lumcweb 192.168.0.25 MossLinux MossLinux 24.94.162.101 smtpserver ]$ netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 192.168.0.0 * 255.255.255.0 U 0 0 0 eth1 169.254.0.0 * 255.255.0.0 U 0 0 0 eth1 default 192.168.0.1 0.0.0.0 UG 0 0 0 eth1
Yet my hosts files includes it. This server is running Fedora Core 2.
I can also ping the localhost just fine:
PING lumcweb (127.0.0.1) 56(84) bytes of data. 64 bytes from lumcweb (127.0.0.1): icmp_seq=0 ttl=64 time=0.071 ms 64 bytes from lumcweb (127.0.0.1): icmp_seq=1 ttl=64 time=0.063 ms 64 bytes from lumcweb (127.0.0.1): icmp_seq=2 ttl=64 time=0.060 ms 64 bytes from lumcweb (127.0.0.1): icmp_seq=3 ttl=64 time=0.063 ms
Should I be concerned?
Probably not...the routes for local are kind of 'hidden'...for example on my debain box (using the iproute command...your FC box will look similar..."up2date iproute" (or however that works now) if you don't have iproute installed):
<quote>
ada:~# ip rule list 0: from all lookup local 32766: from all lookup main 32767: from all lookup default
ada:~# ip route list table local broadcast 127.255.255.255 dev lo proto kernel scope link src 127.0.0.1 broadcast 65.16.44.223 dev eth0 proto kernel scope link src 65.16.44.212 local 65.16.44.212 dev eth0 proto kernel scope host src 65.16.44.212 broadcast 65.16.44.208 dev eth0 proto kernel scope link src 65.16.44.212 broadcast 127.0.0.0 dev lo proto kernel scope link src 127.0.0.1 local 127.0.0.1 dev lo proto kernel scope host src 127.0.0.1 local 127.0.0.0/8 dev lo proto kernel scope host src 127.0.0.1
ada:~# ip route list table main 65.16.44.208/28 dev eth0 proto kernel scope link src 65.16.44.212 default via 65.16.44.209 dev eth0
ada:~# ip route list 65.16.44.208/28 dev eth0 proto kernel scope link src 65.16.44.212 default via 65.16.44.209 dev eth0
ada:~# netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 65.16.44.208 * 255.255.255.240 U 40 0 0 eth0 default host44-209.disc 0.0.0.0 UG 40 0 0 eth0
</quote>
Note the local routes are in the local table, but the default table used by routing tools is 'main'. For a more detailed description of how this all works, see the Linux Advanced Routing and Traffic Control HOWTO:
Chapter four introduces you to the routing policy table (ip rule list), and some of the things you can do with it...