I have a network printer at 192.168.2.101 that I can reach just fine with other machines on my network (ping and access the printer web server).  For some reason I can't access the printer from my Ubuntu machine--pings return host unreachable.

I'm running Ubuntu 11.04

ifconfig

eth1      Link encap:Ethernet  HWaddr 38:59:f9:c4:52:a9  
          inet addr:192.168.2.11  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::3a59:f9ff:fec4:52a9/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:167828 errors:0 dropped:0 overruns:0 frame:2000398
          TX packets:116132 errors:16 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:213283954 (213.2 MB)  TX bytes:15552076 (15.5 MB)
          Interrupt:16

Edited Oct/20/2011

I've added the requested diagnostics below. Any hints in here?

ip route show

$ ip route show
192.168.2.0/24 dev eth1  proto kernel  scope link  src 192.168.2.11  metric 2 
169.254.0.0/16 dev eth1  scope link  metric 1000 
default via 192.168.2.1 dev eth1  proto static 


traceroute

$ ip route show
192.168.2.0/24 dev eth1  proto kernel  scope link  src 192.168.2.11  metric 2 
169.254.0.0/16 dev eth1  scope link  metric 1000 
default via 192.168.2.1 dev eth1  proto static 


netstat

$ netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.2.0     0.0.0.0         255.255.255.0   U         0 0          0 eth1
169.254.0.0     0.0.0.0         255.255.0.0     U         0 0          0 eth1
0.0.0.0         192.168.2.1     0.0.0.0         UG        0 0          0 eth1

Edited Nov/2/2011

After a bit more digging it appears this might be an issue with MAC address translation.

arp yeilds

$ arp
Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.2.101                    (incomplete)                              eth1
192.168.2.1              ether   00:17:3f:90:cd:93   C                     eth1


I've tried adding a static entry, per this post Add static ARP entries when network is brought up, but the result is the same.

Any thoughts?


Question: `scp` searches for target alias on source host instead of local machine
Answer: Indeed, the scp host1:foo host2: is the same as doing scp foo host2: on host1 (The scp, more or less, first connects to host1 and executes scp foo host2: there).

If you want to transfer files via local host (what I believe would also mean the alias is resolved locally), add switch -3:


  -3: Copies between two remote hosts are transferred through the
  local host.  Without this option the data is copied directly between
  the two remote hosts.


http://www.openbsd.org/cgi-bin/man.cgi?query=scp&amp;sektion=1