docs: def get_vip_settings(vip):
      """Calculate which nic is on the correct network for the given vip.
  
      If nic or netmask discovery fail then fallback to using charm supplied
      config. If fallback is used this is indicated via the fallback variable.
  
      @param vip: VIP to lookup nic and cidr for.
      @returns (str, str, bool): eg (iface, netmask, fallback)
      """
      iface = get_iface_for_address(vip)
      netmask = get_netmask_for_address(vip)
      fallback = False
      if iface is None:
          iface = config('vip_iface')
          fallback = True
      if netmask is None:
          netmask = config('vip_cidr')
          fallback = True
      return iface, netmask, fallback