我在办公室有几台 Debian 机器,我们有一个 DNS 服务器,因此使用 .net 应用程序从 Windows 机器通过 ftp 连接到这些机器相当快,我们没有遇到任何问题。随着我们越来越接近项目部署,我们开始设置一个测试环境,我们通过交换机连接这些 Windows 机器和 Debian 机器,没有 DNS 服务器,所有 IP 地址都是手动设置的,而且是静态的。我们遇到了一个非常奇怪的问题,所有 ftp 操作都超时了。机器可以互相 ping 通,我们有连接,但 ftp 速度非常慢。为了测试情况,我进入 Debian 命令行,尝试使用机器的 IP 地址(假设机器的 IP 地址是 16.1.XX)通过 ftp 连接到我所在的机器
ftp 16.1.XX
机器立即响应说已连接到 16.1.xx,但需要最多 40 秒的时间提示输入 ftp 用户名和密码。
由于我在机器上,所以我也尝试过:
ftp 127.0.0.1
它立即要求输入用户名和密码。因此,由于没有 DNS 服务器,因此识别 16.1.XX 似乎花费了太长时间。
我尝试运行 ftp -dv 16.1.XX
我收到的唯一额外信息是 ftp:setsockopt:坏文件描述符。
我的办公室没有遇到过这个问题,所以我怀疑这与 DNS 有关,如能提供任何想法我将不胜感激。
答案1
我不确定这是否有帮助,但如果您没有 DNS 服务器,您应该/etc/hosts
在每个主机上填充该文件。
以下是示例格式:
198.51.100.1 host1.example.com host1
198.51.100.2 host2.example.com host2
198.51.100.3 host3.example.com host3
答案2
Debian 使用 vsftpd 吗?如果是,您可以将其添加到 .conf 文件中以禁用反向查找。
reverse_lookup_enable=NO