我可以在一个家庭networking上有一个公共IP地址的Web服务器吗?

我有一个相当标准的家庭networking,有一个来自ISP的调制解调器,它连接到一台路由器,然后为大约3台PC和笔记本电脑提供NAT。 有可能从我的ISP获得一个公共IP。

现在我想添加一个Web服务器到这个设置。 我所关心的是Web服务器如何与networking的其他部分一起播放。

说我的ISP给我一个公共IP地址1.2.3.4。 在我家的路由器中,我认为我需要设置一个规则,说明对1.2.3.4:80的请求应该被路由到我的Web服务器的内部IP,比如192.168.1.1。

但是,如果我坐在家用电脑上试图加载google.com,Google可能会将我的PC的IP地址(可能是192.168.1.2)当作1.2.3.4(我的公网IP),并将响应发送到这个IP地址。 当IP数据包到达我的路由器时,它会将其视为1.2.3.4:80的数据包,我担心它会被路由到我的家庭networking服务器,这显然会阻止我的电脑正常工作。

我相信在上面的推理中有一些漏洞,并且有可能在一个公共IP之后同时拥有常规桌面和Web服务器。 所以,如果任何人都可以解释我的想法是错误的,它是如何工作的,这将不胜感激。

你几乎就在那里。 除了来自Google的回复不会将其视为1.2.3.4:80的数据包。 他们会将其视为1.2.3.4:XXXXX其中XXXXX是非特权范围内的随机端口号。

此外,路由器将在其路由表中保留一个连接列表,并将返回的数据包正确地路由到您的台式计算机192.168.1.2,而不是您的家庭服务器。

你想要做的是一个相当简单和正常的设置。

请记住,对于住宅ISP,您的“可接受使用政策”或“使用条款”经常会禁止服务器。 我的ISP实际上阻塞了端口25和80(以及其他一些端口),使得无法运行带有端口标识的服务器。

你没有问的问题是“我应该在家庭networking上托pipe一个networking服务器”,答案几乎总是“不”。 技术的存在是为了做到这一点,但除非这是一个非常小的爱好网站(或者仅仅是为了学习的目的),否则你每月支付5美元到10美元的费用要好得多,公司是设置来做到这一点。

那么可以,是吗? 你应该? 几乎从不。