zoukankan      html  css  js  c++  java
  • 实现两台MPTCP主机之间的通信——VSFTPD的配置与使用


    http://www.cnblogs.com/zhuting/p/5738267.html


    MPTCP主机USB无线网卡的选择

    在支持MPTCP的新内核中,USB无线网卡的驱动失效,查阅相关资料没有很好的解决方法。用师兄的免Linux驱动的USB无线网卡试了一下,发现新内核也可以成功识别该网卡。因此最终选择了免Linux驱动的USB无线网卡。

    VSFTPD配置

    配置目的

    在两台支持MPTCP的主机之间进行TCP传输时,会自动使用MPTCP协议,而其中任何一方不支持MPTCP时,则使用普通的TCP进行传输。现在已经成功的配置了两台支持MPTCP的协议,我们将其中一台配置成FTP服务器,通过FTP文件传输抓包观察MPTCP的支持情况。

    VSFTPD介绍

    VSFTPD是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。VSFTPD是一个UNIX类操作系统上运行的服务器的名字,它可以运行在诸如Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的FTP服务器所不支持的特征。比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。VSFTPD是一款在Linux发行版中最受推崇的FTP服务器程序。特点是小巧轻快,安全易用。

    VSFTPD配置

    安装VSFTPD

    sudo apt-get install vsftpd

    配置vsftpd.conf

    sudo gedit /etc/vsftpd.conf

    具体的配置如下,找到相应代码,去掉前面的注释即可

    #禁止匿名访问
    anonymous_enable=NO
    #接受本地用户
    local_enable=YES
    #允许上传
    write_enable=YES
    #用户只能访问限制的目录
    chroot_local_user=YES
    #设置固定目录,在结尾添加。如果不添加这一行,各用户对应自己的目录,当然这个文件夹自己建
    local_root=/home/ftp

    添加FTP用户

    sudo useradd -d /home/ftp -M ftpuser
    sudo passwd ftpuser

    调整文件夹权限,不然会500 OOPS报错,这里要将FTP目录及其目录下的所有文件均设为555权限

    sudo chmod -R 555 /home/ftp 

    修改pam.d/vsftpd,不然会530 login incorrect报错

    sudo gedit /etc/pam.d/vsftpd

    注释掉

    #auth required pam_shells.so

    重启VSFTPD服务

    sudo service vsftpd restart

    VSFTPD使用

    将两台主机连接到局域网内,现在已经可以在客户端用刚刚设置的账号ftpuser登陆ftp了,并且可以看到目录/home/ftp下的文件并进行上传和下载活动。
    可以通过浏览器访问

    ftp://xxx.xxx.xxx.xxx

    也可以直接通过终端进行访问

    ftp xxx.xxx.xxx.xxx

    依次输入账号密码,在终端访问时,各操作命令如下

    ##接入ftp服务器  
    ftp xxx.xxx.xxx.xxx
    ##查看当前目录
    ls 
    ##进入某一目录(以data文件夹为例)
    cd data
    ##以二进制方式传送
    bin
    ##下载文件(以1.MP4为例)到某目录(缺省为当前目录)   
    get 1.MP4
    ##上传文件  
    put
    ##退出FTP模式
    bye   quit   exit  
    ##查FTP当前状态
    status
    ##用其他用户登陆
    user

    VSFTPD测试

    我们用搭好的FTP服务器进行了如下功能性测试:

    • FTP服务器:有线网卡一个,IP:192.168.100.120;无线网卡一个,IP:192.168.1.161;
    • FTP客户端:有线网卡一个,IP:192.168.100.127;

    客户端从服务器192.168.100.120下载MP4文件。
    一开始只有120的包,把IP为120的网线拔掉后,自动改用161传输,传输没有中断。重新插上网线后,恢复120的传输。

    对照组实验:用不支持MPTCP的内核重复上述,拔掉网线后,传输直接中断。

    利用wireshark抓包工具在传输的同时进行抓包,可以看到传输自动使用了MPTCP协议,可以看到报文中TCP->Options中有关于MPTCP的描述。


  • 相关阅读:
    Jenkins Pipeline Script from SCM应用
    Jenkins获取所有job
    Jenkins pipeline使用git共享库(ShareLibrary)
    Jenkins获取用户所属组
    PowerShell函数当做变量传递给另一个函数
    Jenkins input获取提交人
    Groovy Map排序
    Jenkins Pipeline使用File parameter
    Jenkins Active Parameters之Groovy Script(获取具有管理员权限的组+组成员)
    Android中C/C++的日志打印
  • 原文地址:https://www.cnblogs.com/ztguang/p/12645108.html
Copyright © 2011-2022 走看看