ipaddress/hostname:port 的正确术语是什么

网络工程 ipv4 ipv6
2021-07-08 13:48:24

(例如)hostname.tld:433 (hostname:portnumber) 的正确术语是什么?

它不仅仅是主机名,也不是真正的 URL :) 10.0.0.1:3306 等也是如此。

4个回答

调用IP地址和端口对,Socket Address

如果还指定了协议 (10.0.0.1:123, 192.168.0.1:123 UDP),则套接字地址对 (10.0.0.1:123, 192.168.0.1:123) 也可以称为 4-tuple 或 5-tuple

多年来,我一直在编写大量网络代码,“端点一词似乎是“特定 IP 地址上的特定端口”的术语。

查看 Boost 文档以及 Microsoft 文档:

http://www.boost.org/doc/libs/1_38_0/doc/html/boost_asio/reference/ip__tcp/endpoint.html

http://msdn.microsoft.com/en-us/library/bbx2eya8(v=vs.110).aspx

根据DOM/Web API,它只是host.

URL 接口的主机属性是 [...] 主机名,然后,如果 URL 的端口非空,则为“:”,以及 URL 的端口。

您可以在浏览器控制台中看到这一点:

url = new URL('http://example:8080/path')
url.hostname  // "example"
url.host      // "example:8080"

如果您的用例涵盖可选的“身份验证”部分,则这将称为“权限”。

[一个 URI] 包括:

...

  • 权限部分,包括:

    • 用户名和密码的可选身份验证部分,由冒号分隔,后跟 at 符号 (@)
    • “主机”,由注册名称(包括但不限于主机名)或 IP 地址组成。IPv4 地址必须采用点十进制表示法,并且 IPv6 地址必须括在方括号 ([ ]) 中。
    • 一个可选的端口号,用冒号与主机名分开

...

en.wikipedia.org/wiki/Uniform_Resource_Identifier

它在RFC 3986 - Uniform Resource Identifier (URI): Generic Syntax 中正式化

权限组件以双斜杠(“//”)开头,并以下一个斜杠(“/”)、问号(“?”)或数字符号(“#”)字符或结尾结尾的 URI。

authority   = [ userinfo "@" ] host [ ":" port ]