[ubuntu18.04]搭建mptcp测试环境说明

news2025/1/23 13:09:28

MPTCP介绍

Multipath TCP — Multipath TCP -- documentation 2022 documentation

安装ubuntu18.04,可以使用虚拟机安装

点击安装VMware Tool

桌面会出现如下图标

双击打开VMware Tools,复制如下图所示的文件到Home目录

打开终端,切换到管理员权限(如果忘记管理员密码可以使用sudo passwd root修改密码

解压vmwaretools

tar -xvf VMwareTools-10.3.22-15902021.tar.gz

   切换到vmware-tools-distrib目录下

              cd vmware-tools-distrib

执行vmware-install.pl安装

./vmware-install.pl

    按照提示输入yes,然后回车

后面根据提示可以一直回车,安装完成之后,需要重启设备

更新ubuntu18.04源

#阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

#网易源
deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse

#清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

##中科大源
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

备份系统原始源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup

更改源

sudo gedit /etc/apt/sources.list

将原始内容删除,替换ubuntu18.04.txt里面的内容

更新源

sudo apt-get update

安装ifconfig指令工具包

sudo apt install net-tools

安装vim工具包

       sudo apt install vim

安装支持mptcp内版本的内核

软件包下载地址

Releases · multipath-tcp/mptcp (github.com)icon-default.png?t=N7T8https://github.com/multipath-tcp/mptcp/releases

将软件包

linux-headers-5.4.230.mptcp_20230203134326-1_amd64.deb 

linux-libc-dev_20230203134326-1_amd64.deb

linux-image-5.4.230.mptcp_20230203134326-1_amd64.deb   

linux-mptcp_v0.96_20230203134326-1_all.deb

拷贝到ubuntu系统里面,然后执行安装

安装指令

       解压软件包

sudo dpkg -i linux*.deb

       安装软件包

              sudo apt-get install –f

开启开机选择内核版本选项

打开/etc/default/grub文件

注释掉#GRUB_HIDDEN_TIMEOUT=0

更新grub

root@w0425-virtual-machine:/home/w0425/mptcp/5.4# sudo update-grub

Generating grub configuration file ...

Found linux image: /boot/vmlinuz-5.4.230.mptcp

Found initrd image: /boot/initrd.img-5.4.230.mptcp

Found linux image: /boot/vmlinuz-4.19.234.mptcp

Found initrd image: /boot/initrd.img-4.19.234.mptcp

Found linux image: /boot/vmlinuz-4.15.0-20-generic

Found initrd image: /boot/initrd.img-4.15.0-20-generic

Found memtest86+ image: /boot/memtest86+.elf

Found memtest86+ image: /boot/memtest86+.bin

Done

重启设备,选择支持mptcp版本内核

重启之后会自动进入内核选择界面,按键盘的上下键选择Ubuntu高级选项(Advanced options for Ubuntu,然后回车进入内核选择界面,选择带mptcp的内核版本,然后回车启动

 

确认内核支持mptcp方法

关闭mptcp_checksum选择

echo 0 > /proc/sys/net/mptcp/mptcp_checksum

开启debug

echo 1 > /proc/sys/net/mptcp/mptcp_debug

查看mptcp是否默认开启,为1表示开启

root@w0425-virtual-machine:/home/w0425# cat /proc/sys/net/mptcp/mptcp_enabled

1

开启和关闭mptcp方法

开启

       echo 1 > /proc/sys/net/mptcp/mptcp_enabled

关闭

       echo 0 > /proc/sys/net/mptcp/mptcp_enabled

安装测试工具

Iperf & tcpdump

        sudo apt-get install iperf iperf3 tcpdump

git

              sudo apt-get install git

curl

              sudo apt-get install curl

mptcpd

              电脑浏览器手动下载

https://github.com/multipath-tcp/mptcpd/archive/refs/tags/v0.12.tar.gz

mptcpd-0.12.tar.gz

       编译安装mptcpd

              安装软件包依赖工具

sudo apt-get -y install autoconf automake libtool autoconf-archive pkg-config

              安装ell工具

                       git clone git://git.kernel.org/pub/scm/libs/ell/ell.git

      git checkout 0.56

         cd ell

         ./bootstrap

         ./configure

         make install

安装mptcpd

  拷贝mptcpd-0.12.tar.gz到ubuntu

  解压

              tar –xvf mptcpd-0.12.tar.gz

  编译安装

              cd mptcpd-0.12

             ./bootstrap

              ./configure

              mke install

                检查是否安装成功

root@w0425-virtual-machine:/home/w0425/mptcp/mptcpd-0.12# mptcpize

root@w0425-virtual-machine:/home/w0425/mptcp/mptcpd-0.12# mptcpize 
Usage: mptcpize CMD
mptcpize - a tool to enable MPTCP usage on unmodified legacy services

Available CMDs:
	run [-d] prog [<args>]    Run target program with specified
	                          arguments, forcing MPTCP socket usage
	                          instead of TCP.  If the '-d' argument
	                          is provided, dump messages on stderr
	                          when a TCP socket is forced to MPTCP.

	enable <unit>             Update the systemd <unit>, forcing
	                          the given service to run under the
	                          above launcher.

	disable <unit>            Update the systemd <unit>, removing
	                          the above launcher.

Report bugs to <mptcp@lists.linux.dev>.

Ubuntu配置

网卡设置

需要实体网卡,不能使用nat模式,nat模式会出现mptcp异常

查看内核是否启动mptcp

关闭checksum

默认mptcp配置如下,需要手动关闭checksum

需要确认net.mptcp.mptcp_enabled=1

指令如下:

sysctl –w net.mptcp.mptcp_checksum=0

启动tcpdump

tcpdump –ni any port 8888 –vvvv &

启动iperf

mptcpize run iperf –c 192.168.1.1 –p 8888 –P 2 –t 30 –i 1

抓包结果分析

192.168.1.20 to 192.168.1.1 带有mptcp capable表示客户端请求是支持mptcp的

192.168.1.1 to 192.168.1.20 带有mptcp capable字段表示服务器回复支持mptcp

Tcpdump抓包

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1718886.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

100道面试必会算法-27-美团2024面试第一题-前缀和矩阵

100道面试必会算法-27-美团2024面试第一题-前缀和矩阵 问题解读 给定一个 n x n 的二进制矩阵&#xff0c;每个元素是 0 或 1。我们的任务是计算矩阵中所有边长为 k 的子矩阵中&#xff0c;包含特定数量 1 的情况。例如&#xff0c;我们希望找到所有边长为 k 的子矩阵中包含 k…

【面试八股总结】MySQL事务:事务特性、事务并行、事务的隔离级别

参考资料&#xff1a;小林coding 一、事务的特性ACID 原子性&#xff08;Atomicity&#xff09; 一个事务是一个不可分割的工作单位&#xff0c;事务中的所有操作&#xff0c;要么全部完成&#xff0c;要么全部不完成&#xff0c;不会结束在中间某个环节。原子性是通过 undo …

Apache Druid 代码执行(CVE-2021-25646)漏洞复现

Druid简介与漏洞成因 Apache Druid是一个高性能的实时分析型数据库&#xff0c;旨在对大型数据集进行快速查询分析。Druid最常被当做数据库来用以支持实时摄取、高性能查询和高稳定运行的应用场景&#xff0c;同时&#xff0c;Druid也通常被用来助力分析型应用的图形化界面&am…

【方法】如何取消PPT“以只读方式打开“?

以“只读方式”打开的PPT&#xff0c;可能会受到不同的限制&#xff0c;比如无法编辑修改内容&#xff0c;无法保存原文件等。那如何取消PPT的“只读方式”呢&#xff1f;不同形式的“只读方式”&#xff0c;取消方法不同&#xff0c;下面一起来看看吧&#xff01; “只读方式”…

达梦数据库(五) -------- 达梦数据库+mybatisPlus+springboot

前言&#xff1a;安装完达梦数据库后&#xff0c;需要初始化实例&#xff0c;在初始化实例时&#xff0c;需要注意大小写敏感的设置。大小写敏感只能在初始化数据库的时候设置&#xff0c;默认为大小写敏感&#xff0c;一旦设置成功就无法修改&#xff0c;如果想要修改&#xf…

景源畅信:抖音的爆款视频怎么选?

在短视频风起云涌的今天&#xff0c;抖音作为其中的佼佼者&#xff0c;每天都有无数视频在这里诞生。但如何在内容海洋中脱颖而出&#xff0c;成为人们茶余饭后谈论的焦点&#xff0c;是许多创作者和品牌思考的问题。选择爆款视频&#xff0c;不仅需要对平台规则有深刻理解&…

汾阳王发布T系列新品,百亿之路始于山西

执笔 | 文 清 编辑 | 古利特 山西汾阳王酒业董事长王再武提出要把握汾阳王发展的春天之后&#xff0c;其首个大动作来了。 随着汾阳王T系列新品上市&#xff0c;锚定清香第二大中高端品牌的汾阳王开启了山西市场改革&#xff0c;吹响了山西省内市场决胜之战的号角。 在对品牌…

Web前端复习二(期末考试考到了一部分)

第一章测试 选项中加粗的为答案 1.图片的边框可以通过( )设定宽度。 A.width B.height C.border D.align 2.关于超链接&#xff0c;( )属性用于规定在何处打开链接文档。 A.href . B.target C.title D.onclick 3.( )是在新窗口打开网页文档。 A _blank B_self C_…

TiDB学习9:Ti Cloud简介

目录 1. 为什么选择TiDB 2. 多租户 3. TiDB架构 4. 什么是TiDB Cloud 5. TiDB Cloud Provider Region 6. TiDB Cloud 入门 6.1 在浏览器中打开TiDB Cloud 6.2 创建您的账户 6.3 Developer Tier 与Dedicated Tier 6.3.1 Developer Tier 6.3.2 Dedicated Tier 6.3.2.…

IntelliJ IDEA,PyCharm,GoLand全家桶激活码(资源是从官网购买,仅供学习和交流)

全家桶激活码(资源是从官网购买,仅供学习和交流) 激活之前先设置一下代理 第一步:选择代理设置 第二步:选择 Manual proxy configuration 第三步:输入配置,第三步不要漏 下面为复制红框内容,直接复制进去就好!!! Host Name:localhost No proxy for: *.github.c…

2024新版二开微信发卡小程序源码卡密系统流支持量主

2024新版二开微信发卡小程序源码卡密系统流支持量主。裂变扩展多种领取模式二次开发的发卡小程序源码&#xff0c;其后台采用PHP编写&#xff0c;支持用户通过付费购卡或者观看视频广告领取卡密&#xff0c;该小程序还支持流量主&#xff0c;因为功能需要&#xff0c;我就进行了…

【Word】调整列表符号与后续文本的间距

1. 默认的列表格式&#xff1a; 2. 修改间距&#xff1a; ************************************************** 分割线 ************************************************************ 3. 效果

如何使用Cloudways搭建WordPress网站(附最新Cloudways优惠码)

如今&#xff0c;搭建网站已经变得非常简单&#xff0c;这主要得益于开源的CMS建站系统的兴起。即使是不懂编程的人也能轻松搭建自己的网站&#xff0c;这些CMS系统提供了丰富的主题模板和插件&#xff0c;使用户可以通过简单的拖放和配置操作来建立自己的网站。 WordPress是目…

SAP Build引言

前言 SAP Build 似乎是一个整合了很多低代码或无代码产品的平台&#xff0c;最早的时候应该都是各自分开的几个产品&#xff0c;近年合并到一块上了SAP Build平台 现在看官网的介绍应该是有三四个产品被集成进来了&#xff0c;分别是SAP IRPA&#xff0c;SAP Workflow&#xf…

uniapp使用一键登录(前后端两种实现全过程、附代码)

1.开通uni一键登录、开通服务空间uni-app官网 开通流程(业务开通 | uniCloud) 2. 开发:一键登录代码 & 云函数代码 3.排查报错 官方给出三种方式 本人使用了调试了第一种(前端调用)与第三种(后端调用,安全性好) 第一种(前端) 1.关联服务空间、创建云函数名…

大模型算法办备案全网最详细说明(+附件)

已成功备案产品&#xff08;近130家&#xff0c;不包括审核中的&#xff09; 一、大模型算法备案的强制性 二、生成式人工智能(大语言模型)安全评估要点 三、大模型备案必备材料重点说明 四、大模型备案填报流程 五、大模型备案时间成本对比 六、备案建议 附录、过程性材料 一…

# Mybatis 高级用法和tk.mybatis使用

Mybatis 高级用法和tk.mybatis使用 文章目录 Mybatis 高级用法和tk.mybatis使用使用SelectProvider、InsertProvider、UpdateProvider、DeleteProviderSelectProvider使用例子 tk.mybatis引入依赖查询实现实体映射类实体类规范 dao层调用dao 使用SelectProvider、InsertProvide…

使用CS抓取WIN2012明文密码

目录 实验概述&#xff1a; 开始实验&#xff1a; 实验准备&#xff1a; 打开CS&#xff1a; 生成木马控制wind2012&#xff1a; 抓取明文密码&#xff1a; 实验概述&#xff1a; win2012及win10版本是不允许将明文密码储存在内存中的&#xff0c;此时我们…

测试基础08:测试文档的编写(测试计划方案用例报告)

测试大纲 一、测试计划 1 概述 1.1 目的 简述本计划的目的&#xff0c;旨在说明各种测试阶段任务、人员分配和时间安排、工作规范等。测试计划包含足够的信息使测试人员明白项目需要做什么&#xff0c;是如何运作的。另外&#xff0c;清晰的文档结构能使任何一个读者在浏览…

如何利用向量数据库来弥补 LLM 的弱点

向量数据库使企业能够以经济且可持续的方式调整通用大型语言模型以供组织特定使用。 译自 How to Cure LLM Weaknesses with Vector Databases&#xff0c;作者 Naren Narendran。 多年来&#xff0c;人们一直在猜测人工智能对企业产生的潜在影响。现在&#xff0c;我们看到来自…