这是我第一次尝试使用 ARP,所以我有点不知道我错过了什么。我可能走错了路,所以如果我完全错了,请告诉我。
我正在尝试做的事情:我试图让我的一台服务器有一个“名称”,以便我可以直接从外部访问它。我添加了一个主机名,但似乎没有任何效果
$ hostname
excalibur
我尝试执行 arp -a 命令并得到以下结果
$ arp -a
existing.host.local (10.xxx.xxx.xxx) at ipv6 [ether] on etho0
? (10.xxx.xxx.xxx) at ipv6 [ether] on etho0
第二行(带 ? 的那行)是我试图将其设置为外部的,这样它就会被称为 excalibur.host.local 我以为主机名应该能够处理这个问题,但显然我错了。我关闭了除端口 25 之外的所有端口,但我认为这应该与此无关?
有人能指导我需要做什么和/或我应该搜索什么来查找和学习如何设置吗?我一直在寻找,但问题是我真的不知道我需要查找什么,所以我完全不知所措 =/ 提前谢谢 =)
答案1
我认为你想将它添加到你尝试访问的系统上的 /etc/hosts 中从. ARP 将网络接口的 MAC 地址映射到 IP 地址。
DNS 和 /etc/hosts 文件将主机名/完全限定域名映射到 IP 地址。因此,您需要在每个外部系统的 /etc/hosts 中添加一行,类似于 10.xxx excalibur
或者让任何获得 DNS 的人将其添加到他们的 DNS 服务器。这不会让人们访问您的机器,只会让他们获得正确的地址(类似于通过电话号码查找某人的姓名)。您可能需要研究 DDNS 或其他动态 DNS 服务。
以上这些都没有涵盖“外部”人员(大概是在互联网上)如何真正能够访问 10.xxx,因为 1)10.xxx(如果它确实以 10. 开头)不能轮换到互联网,2)您可能有一个防火墙阻止互联网流量到达您的 PC。