code: func (s *Stack) NICSubnets() map[tcpip.NICID][]tcpip.Subnet {
  	s.mu.RLock()
  	defer s.mu.RUnlock()
  
  	nics := map[tcpip.NICID][]tcpip.Subnet{}
  
  	for id, nic := range s.nics {
  		nics[id] = append(nics[id], nic.Subnets()...)
  	}
  	return nics
  }
docs: // NICSubnets returns a map of NICIDs to their associated subnets.