我在研究网络。我想通过ICMP协议传输文件,然后通过wireshark捕获网络流量来解码原始数据。但我不知道如何通过ICMP协议传输文件。所以我的问题是如何通过ICMP在主机之间传输文件。 非常感谢。通过ICMP传输文件
-2
A
回答
1
如果研究约TCP/IP层,你会发现,ICMP是因特网层协议,其目的是:
因特网控制消息协议(ICMP)是在因特网协议组的支撑协议。网络设备(如路由器)使用它来发送错误消息和操作信息。
所以ICMP并不像HTTP或FTP等技术上来说,数据传输协议,它是不可能在任何情况下使用ICMP数据传输协议,除非你改变结构和ICMP的所有编码,然后它会不不再是ICMP。
0
如果你坚持使用ICMP发送数据(这在某些使用情况下是合理的),我建议你阅读this article和that one。第一个也包含使用ICMP传输数据的客户端和服务器的概念证明C代码。你可以找到另一个例子written in C++ here。
此方法背后的想法是使用ICMP Echo(ping)请求和响应传输数据(或本例中的文件)的数据(有效负载)部分。大多数设备都会回复ICMP Echo(ping)请求,所以当其他协议(如ssh,smb,ftp等)被阻止时,这是一种传输文件的方式。
相关问题
- 1. 通过Putty传输文件
- 2. 通过ODATA传输文件
- 3. 通过ssh传输文件
- 4. 通过WCF文件传输
- 5. 通过SFTP传输文件
- 6. 通过SFTP传输文件
- 7. 通过qpid传输文件
- 8. 通过HTTP传输文件
- 9. 通过telnet传输文件?
- 10. 通过HTTP通过WCF流式传输文件上传IOException
- 11. 使用cmd通过ftp传输文件
- 12. 如何通过tcpip传输db文件?
- 13. 通过网络传输文件
- 14. 通过套接字传输文件c
- 15. C#文件传输通过套接字
- 16. 通过Java中的Socket传输文件
- 17. 通过WiFi在iPhone上传输文件
- 18. 通过JMX方法传输文件
- 19. 通过USB进行Android文件传输
- 20. 通过插座传输文件
- 21. 使用SleekXMPP通过XMPP传输文件
- 22. p2p文件传输通过互联网
- 23. 通过传输ftp破坏xml文件
- 24. ffmpeg - 通过RTMP连续传输文件
- 25. 通过蓝牙文件传输Android
- 26. 文件传输通过SSH连接
- 27. 通过蓝牙与Android传输文件
- 28. 如何通过HTTP传输文件?
- 29. 通过蓝牙传输文件
- 30. 通过AJAX上传文件输入
你不能,除非你滥用ICMP的子协议之一。你应该看看UDP。 – EJP
似乎你是网络新手,首先阅读有关TCP/UDP的内容。实际上,确实存在一种称为ICMP隧道的方式来通过ICMP传输文件,但我不认为你的意思是这样。 – jfly