code: func (h *healthcheckManager) markBackend(backend seesaw.IP) uint32 {
  	mark, ok := h.marks[backend]
  	if ok {
  		return mark
  	}
  
  	mark, err := h.markAlloc.get()
  	if err != nil {
  		log.Fatalf("Failed to get mark: %v", err)
  	}
  	h.marks[backend] = mark
  
  	ip := net.IPv6zero
  	if backend.AF() == seesaw.IPv4 {
  		ip = net.IPv4zero
  	}
  
  	ipvsSvc := &ipvs.Service{
  		Address:      ip,
  		Protocol:     ipvs.IPProto(0),
  		Port:         0,
  		Scheduler:    "rr",
  		FirewallMark: mark,
  		Destinations: []*ipvs.Destination{
  			{
  				Address: backend.IP(),
  				Port:    0,
  				Weight:  1,
  				Flags:   ipvs.DFForwardRoute,
  			},
  		},
  	}
  
  	if err := h.ncc.Dial(); err != nil {
  		log.Fatalf("Failed to connect to NCC: %v", err)
  	}
  	defer h.ncc.Close()
  
  	log.Infof("Adding DSR IPVS service for %s (mark %d)", backend, mark)
  	if err := h.ncc.IPVSAddService(ipvsSvc); err != nil {
  		log.Fatalf("Failed to add IPVS service for DSR: %v", err)
  	}
  
  	return mark
  }
docs: // markBackend returns a mark for the specified backend and sets up the IPVS
  // service entry if it does not exist.