FTP网络问题排查

Linux探测路径MTU:

  1. ping大包:
    [test]$ ifconfig
    eth0: flags=4163 mtu 1280
    [test]$ ping -M do -s 1252 172.18.98.3
    PING 172.18.98.3 (172.18.98.3) 1252(1280) bytes of data.
    1260 bytes from 172.18.98.3: icmp_seq=1 ttl=63 time=1.16 ms
    1260 bytes from 172.18.98.3: icmp_seq=2 ttl=63 time=2.89 ms
    [test]$ ping -M do -s 1253 172.18.98.3
    PING 172.18.98.3 (172.18.98.3) 1253(1281) bytes of data.
    ping: local error: Message too long, mtu=1280
    ping: local error: Message too long, mtu=1280
  2. traceroute
    [test]$ traceroute --mtu 172.18.98.3
    traceroute to 172.18.98.3 (172.18.98.3), 30 hops max, 65000 byte packets
    1 10.91.90.54 (10.91.90.54) 3.434 ms F=1280 3.613 ms 2.986 ms
    2 172.18.98.3 (172.18.98.3) 0.972 ms 0.978 ms 0.983 ms

防火墙对ftp主动模式的影响:

  • sever对20端口设置输入drop:
    sudo iptables -A INPUT -p tcp --dport 20 -j DROP
  • client:
    ftp> bina
    200 Switching to Binary mode.
    ftp> passi
    Passive mode off.
    ftp> put glibc-2.0.6.tar.gz
    local: glibc-2.0.6.tar.gz remote: glibc-2.0.6.tar.gz
    200 PORT command successful. Consider using PASV.
    425 Failed to establish connection.

转载:https://blog.csdn.net/qq_45694695/article/details/109584603

1、主动模式的工作流程

FTP网络问题排查_第1张图片
①客户端发送用户名和密码到服务器端21端口
②服务器端验证通过后与客户端建立连接
③客户端开放随机端口,发送PORT命令到服务器端21端口,服务器连接随机端口发送数据到20端口 ④服务器端20端口发送数据,连接到客户端的随机端口
a、客户端的随机端口向服务器端的21号端口发起连接请求,输入用户名和密码,然后服务器端需要进行用户名和密码的认证,认证通过以后需要返回bind信息
b、客户端开放一个新的随机端口,通过port命令发送给服务器端。 连接到随机端口发送数据到20端口。

2、被动模式的工作流程

FTP网络问题排查_第2张图片
①客户端发送用户名和密码到服务器端21端口
②服务器端验证通过后与客户端建立连接
③客户端发送PASV命令到服务器端21端口,服务器开放随机端口
④客户端接受此随机端口,连接此随机端口

你可能感兴趣的:(Linux系统调试,ftp,mtu,防火墙)