Because, as long as the address is routable, there are routers that are tasked with DNS, static routing etc. By definition routing is the ability to send messages to sub / networks that are not directly accessible. If you are using broadband, you probably have a router at your house. This router, in addition to connecting between its WAN and LAN ip addresses, which are different, and most likely on different subnets, also probably supports NAT, (Network Address Translation) which allows you to have unroutable internal ip addresses (192.168… or 10…., etc.), and through the use of either static routing or NAT services allows you to connect to and from the Internet to your internal, unroutable ips.

There seems to be something funny with the valid address ranges.
Who assigned the defualt gateway for 192.168.0.100
and if they are on the same network
What class are they using,it seems obvious to be Class C,but the IP address range is funny (you if you subnet address can vary)even if its a Class B (and subnetting these classes becomes a bit complicated.

The default gateway 192.168.0.100 needs to know the next hop to the 192.168.1.0 Network. That network also needs to know the path back. If both subnets are on the same router they should be able to talk back and forth unless there is an access list or the clients on the other subnet do not have valid gateways configured.

These are the basics in the networking. Please google for
“how computer networks work” you will get lot of sites with good examples. Or You can tru http://www.silliconvalleycie.com which will help you in knowing lot of things in Networking and Linux.

Something else to consider–the 192.168.x.x networks are not routable. When you’re pinging the internet, your router is NAT’ing (NAT–network address translation) your address to an address that is routable. When you’re trying to go from a 192.168.1.x to a 192.168.0.x address, it’s not enough to simply provide a gateway or a static route–you’ll probably have to NAT the addresses between the two subnets. To do that, you’ll have to introduce at least one more router to the mix.

either you add another gateway for the other 192.168.1.* network or you need to create a way for your current gateway to connect to the other network. the latter is from a client configuration point of few the easiest.

right now your gateway doesn’t know how to reach the other network, but it does know how to reach the internet.

Think about it. How is the path to your xxxx.1.1 network ???
Your gateway is routing you out to internet. Thats why you can ping yahoo …..
If you want to ping xxx1.1 network then you need another route (gateway) showing you the path to this network.

A machine can communicate directly with any other machine on it’s own network (as defined by the subnet). The default gateway tells it where to send any traffic that is not on it’s own network. It’s up to the gateway device (typically a router) to determine what to do with the traffic from that point.

So, when you ping yahoo.com, your machine sends the traffic to it’s default gateway that eventually routes it out to the internet and to yahoo.

There are blocks of reserved addresses for different purposes. The ones for private networks are 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16.By default, packets on these networks do not route, unless something is set up explicitly to route them. That’s why they do not travel across the internet, because the standard is that those packets are not supposed to route out on the internet.

So, if your router/gateway isn’t told how to route the 192.168.1.0/24 packets, and the subnet is 192.168.0.0/24, then it doesn’t know what to do with them and the traffic dies. What you could do is change your gateway and network to 192.168.0.0/23 to increase the size of the network, and put them on the same subnet.