I am running Debian testing. When I reboot and plug in my network cable, I am able to ping external servers and machines on my LAN. Basically, it all just works with the network cable plugged in. 

When I reboot and turn on the wifi (ie there is a switch on my laptop to turn on/of wifi) and have the network cable disconnected, I can ping external sites but not internal machines. I get the message Destination Host Unreachable. If  I then plug in the network cable (and turn off wfi) I am able to ping both internal and external servers. If I now disconnect the cable and turn on wifi again, I can ping both external and internal servers. 

/etc/network/interfaces
auto eth0
iface eth0 inet static
        address 192.168.25.150
        netmask 255.255.255.0
gateway 192.168.25.1
dns-search ph.cox.net
dns-nameservers 68.105.28.12 68.105.29.12 68.105.28.11 
        gateway 192.168.25.1

allow-hotplug wlan0
iface wlan0 inet dhcp

I looked at resolv.conf and route for the two scenarios - 

1. Reboot into cable connected network - 
root@orca:/home/mark# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    0      0        0 eth0
link-local      *               255.255.0.0     U     1000   0        0 eth0
192.168.25.0    *               255.255.255.0   U     0      0        0 eth0

root@orca:/home/mark# cat /etc/resolv.conf 
# Generated by NetworkManager
search ph.cox.net
nameserver 68.105.28.12
nameserver 68.105.29.12
nameserver 68.105.28.11

2. Reboot into wifi
root@orca:/home/mark# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    0      0        0 wlan0
link-local      *               255.255.0.0     U     1000   0        0 wlan0
192.168.25.0    *               255.255.255.0   U     0      0        0 eth0
192.168.25.0    *               255.255.255.0   U     0      0        0 wlan0

root@orca:/home/mark# cat /etc/resolv.conf 
nameserver 192.168.25.1

I could change interfaces to have a static IP for wifi, and it would work when I reboot. However, for that occasional visit to Starbucks my wifi would not work. 

What do I need to do to make my wifi work both at home and on the road?

Thanks,

Mark