code: func (op *updateOp) updateAliasFromNode(ctx context.Context, sync *NodeSync, node *v1.Node) error {
  	if sync.mode != SyncFromCluster {
  		sync.kubeAPI.EmitNodeWarningEvent(
  			node.Name, InvalidModeEvent, "Cannot sync to cloud in mode %q", sync.mode)
  		return fmt.Errorf("cannot sync to cloud in mode %q", sync.mode)
  	}
  
  	_, aliasRange, err := net.ParseCIDR(node.Spec.PodCIDR)
  	if err != nil {
  		klog.Errorf("Could not parse PodCIDR (%q) for node %q: %v",
  			node.Spec.PodCIDR, node.Name, err)
  		return err
  	}
  
  	if err := sync.set.Occupy(aliasRange); err != nil {
  		klog.Errorf("Error occupying range %v for node %v", aliasRange, sync.nodeName)
  		return err
  	}
  
  	if err := sync.cloudAlias.AddAlias(ctx, node.Name, aliasRange); err != nil {
  		klog.Errorf("Could not add alias %v for node %q: %v", aliasRange, node.Name, err)
  		return err
  	}
  
  	if err := sync.kubeAPI.UpdateNodeNetworkUnavailable(node.Name, false); err != nil {
  		klog.Errorf("Could not update node NetworkUnavailable status to false: %v", err)
  		return err
  	}
  
  	klog.V(2).Infof("Updated node %q cloud alias with node spec, node.PodCIDR = %v",
  		node.Name, node.Spec.PodCIDR)
  
  	return nil
  }
docs: // updateAliasFromNode updates the cloud alias given the node allocation.