最近有个同时的ftp总是上传文件失败,更换过各种ftp客户端和账号都没有问题,之后又怀疑是win10的问题,但是另外一个同事也是win10,同样的软件,同样的账号都没问题。后来也关过系统防火墙,windows denfender之类的,均告失败。正当准备放弃的时候,突然看到一篇文章(原文连接:https://trac.filezilla-project.org/ticket/5533#no1)是和同事的情况类似,因为他也是很小的文件可以上传,但是大于几kb之后就不能上传了,而导致这个问题的原因是和MTU有关。

具体来说,FTP使用两个TCP连接来通信,一条控制连接(control connection)用来提交命令和接受回复;一条数据连接(data connection)来处理实际的文件传输。在文件传输过程中,控制连接是很容易进入空闲状态的,TCP标准也没有规定一个连接的最大空闲时间。但是路由器和防火墙经常会把空闲的连接给关闭掉,并且不通知双方,就造成了传输100%但最后还是超时的现象。后面的评论就是解决问题的关键了:TCP传输过程中有最大的包上限MTU(Maximum Transmission Unit,不超过1500),超过这个大小的传输就要拆成多个包(packet)。所以比较“小”的文件不用拆包,一次就传输完了;“大”的文件需要拆包,分多次发送,就出现超时的问题。

好了既然找出始作俑者了,那么如何修改呢?

windows下

查看MTU

netsh interface ipv4 show subinterfaces

修改MTU

netsh interface ipv4 set subinterface "本地连接" mtu=1492 store=persistent

注意可能需要将本地连接替换你当前你使用的网卡的中文名称比如以太网

Linux/Mac下

查看MTU

ifconfig | grep mtu

修改MTU

sudo ifconfig en0 mtu 1492

通过上面的设置修改,发现果然ftp上传没问题了。

抱着好奇的态度,我又去看了下另外一个同事的电脑发现,他的 MTU也是默认的1500,为什么他可以???

后来又查询资料发现,原来MTU和ISP有关系,后来我又对比了下他们电脑上的dns,发现果真不一样。好吧,又学习到了不少知识。

linux连ftp超时,ftp上传超时的一种解决方案相关推荐

  1. java文件下载用什么技术_Java中实现文件上传下载的三种解决方案(推荐)

    javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1.通过form表单向后端发送请求 Save 改进后的代码不需要for ...

  2. springboot改文件头_SpringBoot中实现文件上传下载的三种解决方案(推荐)

    之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...

  3. win服务器不能上传文件,Serv u无法上传文件的两种解决方案

    第一步:进入Serv U 管理控制台,选择"用户"建立用户 用户名:test01 密码: 第二步:指定FTP用户的根目录,并钩选锁定用户至根目录选项 权限可以自己定义,可以是只读或 ...

  4. linux上连接ftp服务器,linux下lftp连接ftp服务器进行上传与下载的方法详解

    摘要 腾兴网为您分享:linux下lftp连接ftp服务器进行上传与下载的方法详解,中英翻译,中建在线,掌上看家,银行帮等软件知识,以及微信一键转发工具,小学英语冀教版,正是在下表情包,易问电信,万能 ...

  5. C# 实现FTP文件的上传和下载

    C# 实现FTP文件的上传和下载 任务 任务:在Visual Studio中用C#语言实现对ftp服务器上文件的上传和下载. 现状:初步了解c#语法,对库一无所知 解决:copy别人代码 https: ...

  6. 通过Ftp put命令上传导致文件损坏的解决办法

    通过Linux命令行向在一台Windows FTP服务器上传文件.然后在另一台Windows客户机登录FTP服务器下载,但是下载后的文件大小变了,exe文件错误了不能正确执行.刻意打包的文件(.rar ...

  7. 怎么上传ftp服务器文件,ftp服务器如何上传本地文件

    ftp服务器如何上传本地文件 内容精选 换一换 在本地主机和Windows弹性云服务器上分别安装QQ.exe等工具进行数据传输.使用远程桌面连接mstsc方式进行数据传输.该方式不支持断点续传,可能存 ...

  8. python——利用nmap进行端口扫描,爆破ftp密码,上传wellshell.

    一.端口扫描 首先安装nmap与python-nmap模块.从http://nmap.org/download.html网站下载nmap安装文件.从http://xael.org/norman/pyt ...

  9. 本地终端通过ftp put命令上传导致文件损坏的解决办法(无语)

    通过终端命令行向在一台Windows FTP服务器上传图片.服务器里面有东西了,但是打开后的图片变了(法克-----马赛克),呵呵呵(失真了),额.........应该是文件损坏了吧. 经过搜索发现一 ...

  10. 文件上传到ftp服务器大小变小,ftp服务器文件上传大小设置

    ftp服务器文件上传大小设置 内容精选 换一换 文件选择上传控件,用于上传文件. Windows场景中,当把源端服务器迁移到华为云后,目的端服务器C盘的已用空间比对应源端服务器C盘的已用空间大至少1G ...

最新文章

  1. 因为站在船头,所以难以沉默——专访数据院执行副院长韩亦舜【第一届数据故事计划】...
  2. CSS类名称/选择器中哪些字符有效?
  3. linux删除sde服务,在Oracle数据库中部署多个SDE服务
  4. 文件上传打满服务器带宽,文件上传云服务器 带宽选择
  5. Java经典面试题整理及答案详解(四)
  6. Android之ListView异步加载图片且仅显示可见子项中的图片
  7. 2010502260926_《avolon》
  8. TMG学习(十一),保护企业内网上网安全
  9. Spring Data JPA 从入门到精通~事务的处理及其讲解
  10. vue学习笔记(五):对于vuex的理解 + 简单实例
  11. MQTT(2)---MQTT协议
  12. 静态库.a和动态库.so的制作
  13. 开机登录时取消Ctrl+Alt+Delete
  14. 哈佛结构 Linux,哈佛结构与冯诺依曼结构区别
  15. 播放.avi后缀视频报出0xc00d5212,编码格式不支持
  16. 【LeetCode】跳步系列
  17. Python 测试广告语敏感词
  18. 手把手教你开发列举网自动发帖软件!神器哈
  19. python 在set里随机选一个元素_阿博Python之路-详解Set数据类型
  20. 个人上班作息时间规划(周一至周五)

热门文章

  1. Factorization Machines 论文翻译
  2. hone hone clock 与小松鼠驾到~还有牛顿摆等一些其他好玩的东西
  3. 【埋点】是什么埋点?简述埋点的操作流程
  4. Win10重装系统后bitlocker加密后解密方法
  5. 清理谷歌浏览器注册表_win10注册表chrome残留无法删除如何解决
  6. 五个真实的数据挖掘故事
  7. 华为设备配置Easy IP 地址转换
  8. 计算机多余自动启动项,大神教你WIN7如何删除多余系统启动项
  9. 怎么将视频转化为gif动画?视频如何生成gif格式图片?
  10. 时尚达人玩转短裤短裙凉鞋搭配