Функция net.LookupPort
Функция net.LookupPort выполняет поиск номера порта по его строковому имени.
В первый параметр передается сетевой протокол (например, "tcp" или "udp"),
во второй параметр передается имя сервиса (например, "http", "ssh" или "smtp").
Функция возвращает номер порта в виде числа типа int и ошибку, если порт не найден.
Синтаксис
net.LookupPort(network, service)
Пример
Давайте получим номер порта для протокола TCP и сервиса HTTP:
package main
import (
"fmt"
"net"
)
func main() {
port, err := net.LookupPort("tcp", "http")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(port)
}
Результат выполнения кода:
80
Пример
Давайте получим номер порта для протокола UDP и сервиса DNS:
package main
import (
"fmt"
"net"
)
func main() {
port, err := net.LookupPort("udp", "dns")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(port)
}
Результат выполнения кода:
53
Пример
Давайте попробуем получить порт для несуществующего сервиса:
package main
import (
"fmt"
"net"
)
func main() {
port, err := net.LookupPort("tcp", "unknown_service")
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(port)
}
Результат выполнения кода:
"Error: lookup unknown_service: unknown port"
Смотрите также
-
функцию
net.LookupHost,
которая выполняет поиск IP-адресов по имени хоста -
функцию
net.SplitHostPort,
которая разделяет строку host:port на отдельные компоненты -
функцию
net.JoinHostPort,
которая объединяет хост и порт в одну строку -
функцию
net.Dial,
которая устанавливает сетевое соединение