code: func (c *client) sendQuery(msg *dns.Msg) error {
  	buf, err := msg.Pack()
  	if err != nil {
  		return err
  	}
  	if c.ipv4conn != nil {
  		c.ipv4conn.WriteTo(buf, ipv4Addr)
  	}
  	if c.ipv6conn != nil {
  		c.ipv6conn.WriteTo(buf, ipv6Addr)
  	}
  	return nil
  }
docs: // Pack the dns.Msg and write to available connections (multicast)