Maybe this example will be helpful for you (providing that all the IPs are assigned to the same interface and that I've not misunderstood your question):
root@ulises:~# ifconfig eth0 | grep "inet addr"
inet addr:192.168.0.30 Bcast:192.168.0.255 Mask:255.255.255.0
root@ulises:~# ifconfig eth0:0 192.168.0.17 up
root@ulises:~# ping -c 1 192.168.0.17
PING 192.168.0.17 (192.168.0.17) 56(84) bytes of data.
64 bytes from 192.168.0.17: icmp_req=1 ttl=64 time=0.064 ms
--- 192.168.0.17 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.064/0.064/0.064/0.000 ms
root@ulises:~# ifconfig eth0 down
root@ulises:~# ping -c 1 192.168.0.17
PING 192.168.0.17 (192.168.0.17) 56(84) bytes of data.
From 192.168.0.238 icmp_seq=1 Destination Host Unreachable
--- 192.168.0.17 ping statistics ---
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
(*) the ping is done through a second eth1 interface