Функция net.LookupCNAME

Функция net.LookupCNAME выполняет DNS-запрос для получения канонического имени (CNAME-записи) указанного хоста. В первый параметр мы передаем имя хоста в виде строки (например, "www.example.com"). Функция возвращает каноническое имя хоста в виде строки и ошибку, если запрос не удался. Если для хоста не найдено CNAME-записи, функция возвращает само имя хоста без ошибки.

Синтаксис

gonet.LookupCNAME(host)

Пример

Давайте получим каноническое имя для хоста "www.google.com":

gopackage main

import (
  "fmt"
  "net"
)

func main() {
  cname, err := net.LookupCNAME("www.google.com")
  if err != nil {
    fmt.Println("Error:", err)
    return
  }
  fmt.Println(cname)
}

Результат выполнения кода:

go"www.google.com."

Пример

Давайте проверим, что произойдет, если хост не имеет CNAME-записи. Возьмем "example.com":

gopackage main

import (
  "fmt"
  "net"
)

func main() {
  cname, err := net.LookupCNAME("example.com")
  if err != nil {
    fmt.Println("Error:", err)
    return
  }
  fmt.Println(cname)
}

Результат выполнения кода:

go"example.com."

Пример

Если хост не существует, функция возвращает ошибку. Например, для "nonexistent.example.com":

gopackage main

import (
  "fmt"
  "net"
)

func main() {
  cname, err := net.LookupCNAME("nonexistent.example.com")
  if err != nil {
    fmt.Println("Error:", err)
    return
  }
  fmt.Println(cname)
}

Результат выполнения кода:

go"Error: lookup nonexistent.example.com: no such host"

Смотрите также

  • функцию net.LookupHost,
    которая возвращает IP-адреса хоста
  • функцию net.LookupIP,
    которая возвращает IP-адреса хоста в виде объектов IP
  • функцию net.LookupMX,
    которая возвращает MX-записи домена
  • функцию net.LookupTXT,
    которая возвращает TXT-записи домена