On Sun, Jan 28, 2007 at 08:42:21AM -0800, Peter Easthope wrote:
> At Thu, 25 Jan 2007 12:45:38 -050, Roberto Sanchez said,
> "Setup mutt on the machine and ssh in when
> you are travelling."
> 
> Good idea!
> 
> The puzzling detail is how to address the home machine
> which has a dynamic address assigned by cablelan.  Is
> there a way to use the MAC address rather than the IP
> address?
> 

Lots of folks recommended using dyndns and I concur.  I have several
domains registered with them (originally started out with their free
service when I had dynamic IP at home) and their service is awesome.

Now, I will explain why the MAC won't work.  MAC stands for medium
access control.  This is used when multiple devices are connected to the
same local network segment.  Since routers are (generally) layer 3
devices, they forward based on IP address (I am discounting other
address protocols).  But, they only know which MAC addresses belong to
devices connected directly to them.  The way that MAC addresses and IP
addresses are associated is by ARP (address resolution protocol).

That is why if you look at the routing tables on your machine (assuming
a typical setup of a home network connected to a cable/DSL modem to your
ISP), you will see somthing like this:

$ /sbin/route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0         w.x.y.z         0.0.0.0         UG    0      0        0 eth0

What that means is that for machines in the 192.168.2.0/24 address
range, the system knows that they are all directly addressable via the
network connected to eth0 (the gateway setting of 0.0.0.0 means that the
machine is able to communicate directly).  Anything that has an address
not in 192.168.2.0/24 automatically gets forwarded to the router at
w.x.y.z.  If you are really interested in what devices your machine can
see on its local network segment, then running something like
`/usr/sbin/arp -a` will show you which ones your machine has recently
seen.

If you want to see *every* machine on your local network segment, then
run `ping -c 4 192.168.2.255` and then rerun `/usr/sbin/arp -a` and you
should see all the machines (computers, printers, routers, etc) on your
network.

So, the short answer is because MAC addresses are not visible to
machines not on the local network segment.

Regards,

-Roberto

-- 
Roberto C. Sanchez
http://people.connexer.com/~roberto
http://www.connexer.com

Attachment: signature.asc
Description: Digital signature

Reply via email to