/*
Package vips provides information and interaction with the Virtual IP API
resource for the Rackspace Cloud Load Balancer service.

A virtual IP (VIP) makes a load balancer accessible by clients. The load
balancing service supports either a public VIP, routable on the public Internet,
or a ServiceNet address, routable only within the region in which the load
balancer resides.

All load balancers must have at least one virtual IP associated with them at
all times.
*/
package vips
