背景:
我的apache two服务器运行在两个具有两个不同IP地址的虚拟主机上。我已将这两个I白化到远程SMPP服务器/系统。我将通过一台拥有这两个IP地址的机器与远程服务器进行通信。
Situation:
我正在尝试打开到远程SMPP服务器的套接字连接。但是我想从不同的IP地址开始连接到服务器。
我尝试了什么:我创建了两个文件夹mkdir /var/www/html/server{1,2}
并将以下行添加到我的http.conf
Listen 1.1.1.1:80
Listen 2.2.2.2:80
<VirtualHost 1.1.1.1:80>
DocumentRoot /var/www/html/server1
</VirtualHost>
<VirtualHost 2.2.2.2:80>
DocumentRoot /var/www/html/server2
</VirtualHost>
在每个文件夹中,我都编写相同的php文件,它打开一个套接字连接,并做它应该做的任何事情。我将在一台新机器上移动server2和第二个IP。但在此之前,我只想确定第二个IP实际上是白的,我将能够通过那个IP进行通信。
问题:当您在fsockopen
中使用fsockopen
时,会向远程服务器发送什么IP地址?它会和$_SERVER['SERVER_ADDR']
或者其他什么一样吗?
关于IP的说明:
我看到几个答案提到了我的机器的实际IP地址。假设我有两个eth卡,为我提供了两个接口,即1.1.1.1和2.2.2.2IP地址的eth0和eth1接口。两者都连接到外部世界,我可以通过任何地址调用我的机器。那么,如果您的回答类似于,请告诉我哪一个是1.1.1.1还是2.2.2.2?你如何决定哪一个是真实的,哪个是虚拟的?
发布于 2011-12-08 09:51:04
这将是您的服务器的实际公共IP。
发布于 2011-12-08 09:55:44
假设服务器上有3个IP:
1.1.1.1 - main IP (link IP)
2.2.2.2, 3.3.3.3 - on some other network interfaces
所有请求都将从主IP转到其他服务器。
还有一种情况是1.1.1.1、2.2.2.2和3.3.3.3是链接接口。在这种情况下,您可能需要与网络管理员联系,并检查这些接口是如何配置的,以及主要连接IP是什么。
例如,我有两个接口: eth0和eth1桥接,公共IP与桥相关联。
https://stackoverflow.com/questions/8428993
复制相似问题