这是一个端口转发的网站吗?我只能在某些计算机上访问它。www.example.com:2041/
它是否使用以太网来使用该站点还是依赖于计算机?
答案1
如果 URL 在域名或 IP 地址 ( http://domain:port/
) 后包含端口号,则表示服务器正在非标准端口上运行。未加密 HTTP 的默认值为 80,而加密 HTTP 的默认值为 443。根据您的 ISP 或您用于访问互联网的网络,可能不允许使用非默认端口。虽然从技术上讲,计算机的防火墙设置可以禁止连接到非标准 HTTP 端口,但如果它不起作用,则更可能的原因是您的 ISP 或网络的网关防火墙。如果您使用代理访问互联网或 Web,该代理可能会对允许的端口号施加进一步的限制。
至于服务器本身,服务器管理员通常可以选择 1 到 65535 之间的任意数字来运行 HTTP(Web)服务器。同样,选择非标准端口需要在 URL 上指定端口号,否则浏览器将不知道如何连接到服务器。给定端口号是否有效与以太网与无线或拨号与有线无关。决定因素是本地和远程防火墙、网关和代理设置。
关于端口转发,服务器使用非标准端口这一事实实际上并不能说明 HTTP 服务器是否使用代理或端口转发。使用标准端口号的服务器可能使用端口转发,就像使用非标准端口号的服务器可能没有任何端口转发一样。任何有效的端口号都可以是直接的或转发的。
要回答你的主要问题,无法仅根据 URL 判断网站是否启用了端口转发。事实上,我并不熟悉任何可靠的方法来从外部检测端口转发的使用情况。端口转发是一种相对低级的路由类型,通常不会在 HTTP 通信中留下任何痕迹。最好的选择可能是使用TCP/IP 指纹识别。例如,如果目标计算机似乎正在运行 Linux,但 HTTP 服务器正在运行 Microsoft IIS,则很有可能正在使用端口转发。
答案2
我认为您在这里混淆了两个不相关的概念。端口转发的网站看起来与普通网站完全一样。
端口转发是一种路由技术,最常用于 Web 服务器在使用 NAT 的简单网络上运行的情况。大多数消费级路由器都使用 NAT 在多台计算机之间共享具有单个 IP 地址的单个连接。
在这种情况下,更广泛的互联网上的计算机无法知道哪台计算机托管该网站 - 除非路由器转发适当的端口 - 这就是端口转发。
使用 80 以外的端口与端口转发关系不大(除非 NAT 后面有 1 台以上的计算机正在运行 Web 服务器)。几乎任何端口都可用于 Web 请求 - 通常使用 80 以外的端口来通过隐蔽方式实现一定程度的安全,或者因为有 1 台以上的 Web 服务器正在运行。
关于是否使用端口转发的端口号并没有说明连接是以太网还是其他连接。