我需要远程连接到我的计算机(所有端口),但该 IP 会发生变化。我已经弄清楚了计算机如何知道我当前的 IP,但我不知道如何在所有端口上添加 IP 并删除该 IP(动态 IP,因此我将删除一个并添加一个新的)。我不需要保存命令期间的更改吗?
对于回答者,我已经有一个无 IP 帐户,计算机会检查它以查看它何时更改。我现在要做的就是添加新 IP 并删除旧 IP。此外,我的路由器只允许我需要的端口。不过,感谢您的尝试。
答案1
回答你的问题,你获得的 IP 是由你的 ISP 分配的。你必须联系他们才能将你的 IP 保留为“静态”,这可能会花费你额外的费用。
至于此后的访问,您只需要在路由器中转发相关端口,并在目标机器上打开这些端口的防火墙。
答案2
实现此目的的最佳方法是使用 No-Ip 之类的系统,我个人在家里的 MediaPC 上使用此系统。当系统更改为 no-ip 系统时,它会自动更新您的 IP,并将子域设置为您的新 IP。
初始帐户可以免费设置,并且一些路由器实际上在其配置中没有 IP,因此不需要在 PC 上安装软件。
现在,对于 PC 上的软件,他们确实提供基于 Daemon 的软件: Init.d 启动脚本不适用于 No-IP
我自己也设置了这个。你可以从这里下载他们的软件: http://www.noip.com/downloads.php?page=linux
然后像我在上面的帖子中所做的那样设置 Daemon upstart 脚本,启动时一切正常。我自己每 10 分钟检查一次。
需要做的另一件事是您需要进入调制解调器或路由器(取决于您的 ISP)并设置端口转发。例如,我在媒体 PC 上使用 plex。因此,要从外部连接,我必须告诉我的路由器将端口(即32400
plex 默认端口)转发到外部世界的 XXXX 端口。我使用另一个端口,32400
所以它不是默认端口。
此端口转发至关重要,因为它允许通过 ISP 从路由器外部进行传入访问。
现在大多数路由器都没有*
端口转发功能,您必须手动执行每个端口转发。他们这样做是为了安全,唯一真正允许所有端口的方法是设置路由器时不设置防火墙,或者在某些路由器上,DMZ 区域将允许所有端口转发,而其他路由器则不允许,它只会禁用过滤。您需要查看路由器手册,了解 DMZ 是否允许您的型号的所有端口转发。
有关设置路由器基本端口转发的一些链接。
http://www.cctvcamerapros.com/DLink-Port-Forwarding-Setup-s/119.htm http://www.wikihow.com/Port-Forward/Open-Ports-on-a-Linksys-Router http://foscam.us/blog/foscamipcameras/guide-to-port-forwarding-netgear-router/
现在,一个快速的解决方案是,在某些路由器中,它们将允许端口范围,为此,您将输入端口 1 作为第一个端口,65534 作为结束范围,这将允许所有端口从外部转发到 X ip 地址。这同样只在某些路由器上,较便宜的路由器或被您的 ISP 锁定的路由器将仅允许单个端口转发。
完成更改后,大多数路由器都需要您重新启动路由器才能使更改生效,大多数新路由器都会要求您执行此操作并使用软件重新启动。如果没有,您必须拔下路由器几秒钟,然后在保存更改后重新插入。
答案3
sudo iptables -I INPUT -i eth1 -s $currip -j ACCEPT
添加 IP
sudo iptables -D INPUT -i eth1 -s $lastip -j ACCEPT
删除 IP
已测试
感谢那些尝试过的人。我希望这对某些人有帮助。