尝试了解如何读取 netstat 输出。
我在浏览器中打开了 site1.com
在我的服务器上netstat -A inet -p -e输出以下内容:
tcp 0 0 site1.com:www foreign-adress:37991 ESTABLISHED www-data 94215 19880/apache2
当我在浏览器中打开 site2.com 并运行时没有netstat -A inet -p -e我再次得到输出:
tcp 0 0 site1.com:www foreign-adress:37991 ESTABLISHED www-data 94215 19880/apache2
tcp 0 0 site1.com:www foreign-adress:37992 ESTABLISHED www-data 93034 19879/apache2
现在为什么 netstat 没有显示:
tcp 0 0 site1.com:www foreign-adress:37991 ESTABLISHED www-data 94215 19880/apache2
tcp 0 0 site2.com:www foreign-adress:37992 ESTABLISHED www-data 93034 19879/apache2
因为我通过 site1.com 和 site2.com 与该服务器有两个连接
这是我在服务器上配置错误的吗?
提前感谢你的帮助
答案1
由于 site1 和 site2 共享同一个 IP 地址,我可以在这里回答您的最后一条评论。Netstat 只知道 IP 地址。如果您省略 -n 参数,netstat 将在 DNS 或您的主机文件中进行反向查找。由于一个 IP 地址只能有一个 IN PTR 记录,因此它只能显示一个主机名。
你可能有:
site1.com has 1.2.3.4
site2.com is a CNAME alias on site1.com
1.2.3.4 is site1.com
这就是 DNS 的工作方式。
远程网络服务器通过主机:HTTP 标头区分请求,以了解要提供什么内容。