tftp传文件被服务器拒绝进入tftp: server error: (768) Access to staonline.pcap denied

环境:测试一个ac下挂ap,ap下的抓包文件传出时,出现问题:

ac的wan口ip是192.168.186.167/24,gw是192.168.186.1,下挂ap的ip是192.168.202.199/24,ac上开子接口192.168.202.1/24,ac上开nat功能。tftp服务器在pc192.168.186.118/24上,和ac的wan口在同一网段。

开始以为是ap的对应目录和文件没有读写权限,chmod 777进行修改后,问题依旧。

root@IIIoT:/# chmod 777 /tmp

root@IIIoT:/# tftp -p -l /tmp/staonline3.pcap 192.168.186.118

tftp: server error: (768) Access to /tmp/staonline3.pcap denied

root@IIIoT:/# cd /tmp

root@IIIoT:/tmp# ls -l staonline3.pcap

-rw-r--r-- 1 root root 2010 Sep 29 17:16 staonline3.pcap

root@IIIoT:/tmp# chmod 777 staonline3.pcap

root@IIIoT:/tmp# tftp -p -l /tmp/staonline3.pcap 192.168.186.118

tftp: server error: (768) Access to /tmp/staonline3.pcap denied

root@IIIoT:/tmp# tftp -p -l /tmp/staonline3.pcap 192.168.186.118

tftp: server error: (768) Access to /tmp/staonline3.pcap denied
root@IIIoT:/tmp# tftp: server error: (768) Access to /tmp/staonline3.pcap denied

问题还在,决定在tftp服务器pc上和ap上同时抓包,对比查看。tftp的usb网卡接ap同一网段的接口,ap的抓包传到usb网卡的ip上,这样不经过ac的nat功能。

root@IIIoT:~# tcpdump -any -nne -w testtftp.pcap

tcpdump: invalid data link type -nne

root@IIIoT:~# tcpdump -i any -nne -w testtftp.pcap

tcpdump: listening on any, link-type LINUX_SLL (Linux cooked), capture size 262144 bytes

^C894 packets captured

896 packets received by filter

0 packets dropped by kernel

root@IIIoT:~# ls -l *pcap

-rw-r--r-- 1 root root 85651 Sep 26 18:45 staonline.pcap

-rw-r--r-- 1 root root 111110 Sep 29 20:24 testtftp.pcap

root@IIIoT:~# tftp -pl testtftp.pcap 192.168.202.202 传出ap上抓包文件

ap上抓包文件显示如下:只有客户端发出write请求消息,没有后续消息

tftp服务器上抓包显示如下:

tftp服务器发出ack,收到ac发来的destnation port unreachable的消息。

查看icmp的目标不可达消息

发现源地址ac的wan口地址,而目标地址是tftp服务器的地址,而且ttl是64,表示是ac直接发出,而不是经过转接的icmp消息。

对应ap的抓包,ack并没有收到,而且也没有icmp消息发出,据此判断ac直接回的目标端口不可达。

原因分析,ac没有端口alg功能,对tftp协议,后续消息会改变端口发来,而ac的conntrack记录表的五元组里没有对应的表项,导致ac直接回icmp端口不可达项。

测试一下,关闭ac的nat功能,发现重新测试,文件传送成功。

相关推荐
zyx没烦恼8 分钟前
TCP相关实验
服务器·网络·tcp/ip
朗晴29 分钟前
文本编辑器VIM的使用方法!
linux·运维·服务器
小林up1 小时前
github push:ssh: connect to host github.com port 22
运维·ssh·github
mgx_7181 小时前
修改阿里云vps为自定义用户登录
服务器
梁bk4 小时前
[Nginx]反向代理和负载均衡
运维·nginx·负载均衡
(:满天星:)9 小时前
第31篇:块设备与字符设备管理深度解析(基于OpenEuler 24.03)
linux·运维·服务器·网络·centos
小陶来咯10 小时前
【仿muduo库实现并发服务器】Acceptor模块
运维·服务器
爱莉希雅&&&10 小时前
shell编程之awk命令详解
linux·服务器·git
笑稀了的野生俊10 小时前
在服务器中下载 HuggingFace 模型:终极指南
linux·服务器·python·bash·gpu算力
cui_hao_nan10 小时前
Docker后端部署
运维·docker·容器