DockerDesktop替换方案
背景
由于DockerDesktop并非开源软件,如果在公司使用,可能就有一些限制,那是不是除了使用DockerDesktop外,就没其它办法了呢,现在咱们来说说替换方案。
WSL
WSL是什么,可自行百度,这里引用WSL百度百科,下面咱们直接进入主题
开启子系统
需要管理员权限执行下面操作,打开CMD或PowerShell
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
也可以通过下面方法启用,打开开始菜单,输入启用或关闭Windows功能,在弹出菜单中,勾选虚拟机平台和适用于 Linux 的 Windows 子系统,确定后重启系统生效。
检查系统版本
对于x86_64 系统:操作系统win 10版本是1903 或更高版本,内部版本为 18362.1049 或更高版本,Win 11也可以的,下面命令检查系统版本
winver
启动虚拟机功能
管理员权限运行,CMD或PowerShell都可以
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
更新Linux内核包
如果有必要的话,可以更新下,下载安装x86_64机器的更新包
下载地址 安装也是需要管理员权限。
更新WSL版本
更新不了,不更新可以用的话,也是OK的
wsl --update [--web-download http://xxxx]
--web-download 可选项,从指定地址下载而不是Microsoft Store 下载最新更新
检查WSL状态
wsl --status
默认分发:OracleLinux_8_5
默认版本:2
上面输出默认版本不是2,可更改为2版本
wsl --set-default-version 2
安装WSL包
这个WSL包,其实就是一个Linux系统了,选择自己熟悉的就OK,可以安装1个或多个,不过一般一个就OK,除非需要在不同系统做测试。
下面的系统,自行选择下载。
- Ubuntu 24.04
- Ubuntu 22.04 LTS
- Ubuntu 20.04
- Debian GNU/Linux
- openSUSE Tumbleweed
- SUSE Linux Enterprise Server 15 SP3
- openSUSE Leap 15.3
- Oracle Linux 8.5
- Oracle Linux 7.9
- Fedora Remix for WSL
下载后是一些.Appx,.AppxBundle等后缀的文件,双击即可安装,如果不行,可通过命令行安装,打开Powershell执行
Add-AppxPackage .\xxx.Appx
Add-AppxPackage .\xxx.AppxBundle
安装好后,可在开始菜单中找到,单击即可打开,需要为新的 Linux 分发版创建用户帐户和密码,这个就类似进入操作系统的用户名和密码,自己用设置123456亦可,后续忘记密码,也可以wsl -u root -d Ubuntu_22.04进入根目录,然后执行passwd更改密码。
wsl具体的使用命令可自行搜索,此处略。
进入wsl子系统后,sudo su - 切换到root用户。
跨文件系统工作
1、windows的盘自动默认挂载到了/mnt下。
2、windows下可执行这查看子系统目录
start \\wsl$
3、借助 WSL,Windows 和 Linux 工具和命令可互换使用。
- 从 Linux 命令行运行 Windows 工具(即 notepad.exe)
- 从 Windows 命令行(如 PowerShell)运行 Linux 工具(如 grep)
- 在 Linux 和 Windows 之间共享环境变量
使用 Linux 命令 ls -la 列出文件,并使用 PowerShell 命令 findstr 来筛选包含“go”的单词。
wsl ls -la | findstr "go"
使用 PowerShell 命令 dir 列出文件,并使用 Linux 命令 grep 来筛选包含“go”的单词
C:\> dir | wsl grep go
使用 Linux 命令 ls -la 列出 /proc/cpuinfo Linux 文件系统路径中的文件
C:\> wsl ls -la /proc/xxxx
在linux下也可以使用win的命令
ls -la | findstr.exe /etc/passwd
用win的记事本编辑WSL里的文件
notepad.exe "E:\yyy.txt"
4、禁用互操作特性
使用 root 身份运行以下命令,禁用针对单个 WSL 会话运行 Windows 工具的功能
echo 0 > /proc/sys/fs/binfmt_misc/WSLInterop
若要重新启用 Windows 二进制文件,请退出所有 WSL 会话并重新运行 bash.exe,或者以 root 身份运行以下命令:
echo 1 > /proc/sys/fs/binfmt_misc/WSLInterop
注意:每次切换 WSL 会话后,禁用互操作的结果不会持久保留 – 启动新会话后,会再次启用互操作。
WSL设置
wsl.conf 和 .wslconfig 文件用于针对每个发行版 (wsl.conf) 和全局跨所有 WSL 2 发行版 (.wslconfig) 高级设置选项,为已安装的 Linux 发行版配置设置,使它们在你每次启动 WSL 时自动应用
- wslconfig 用于在 WSL 2 上运行的所有已安装发行版中配置全局设置
- wsl.conf 用于为在 WSL 1 或 WSL 2 上运行的每个 Linux 发行版按各个发行版配置本地设置
必须停止所有的wsl版本超过8s,配置才会生效
# 关闭所有
wsl --shutdown
wsl.conf
使用 wsl.conf 为 WSL 1 或 WSL 2 上运行的每个 Linux 发行版按各个发行版配置本地设置
文件位于每个wsl的目录/etc/wsl.conf,没有可创建,支持五个部分:automount、network、interop 、boot和 user
下面是示例文件
# Automatically mount Windows drive when the distribution is launched
[automount]# Set to true will automount fixed drives (C:/ or D:/) with DrvFs under the root directory set above.
# Set to false means drives won't be mounted automatically, but need to be mounted manually or with fstab.
enabled = true# Sets the directory where fixed drives will be automatically mounted.
# This example changes the mount location, so your C-drive would be /c, rather than the default /mnt/c.
root = /mnt# DrvFs-specific options can be specified.
options = "metadata=disabled,uid=1001,gid=1001,umask=022,fmask=000,case=off"# Sets the `/etc/fstab` file to be processed when a WSL distribution is launched.
mountFsTab = true# Network host settings that enable the DNS server used by WSL 2.
# This example changes the hostname, sets generateHosts to false, preventing WSL from the default behavior of auto-generating /etc/hosts, and sets generateResolvConf to false, preventing WSL from auto-generating /etc/resolv.conf, so that you can create your own (ie. nameserver 1.1.1.1).
[network]
# wsl 的主机名
# hostname = DemoHost
generateHosts = true
generateResolvConf = true# Set whether WSL supports interop processes like launching Windows apps and adding path variables.
# Setting these to false will block the launch of Windows processes and block adding $PATH environment variables.
# 在预览体验成员内部版本 17713 和更高版本中可用
[interop]
# 是否支持启动 Windows 进程
enabled = false
# 是否会将 Windows 路径元素添加到 $PATH 环境变量
appendWindowsPath = false# Set the user when launching a distribution with WSL.
[user]
default = appuser# Set a command to run when a new WSL instance launches. This example starts the Docker container service.
[boot]
# 仅在 Windows 11 和 Server 2022 上可用
command = service docker start
# 启用systemd支持
systemd=true
如果启用了systemd,则应禁用或屏蔽可能导致 WSL 问题的单元。 以下已知会导致 WSL 分发中问题的单元:
- systemd-resolved.service
- systemd-networkd.service
- NetworkManager.service
- systemd-tmpfiles-setup.service
- systemd-tmpfiles-clean.service
- systemd-tmpfiles-clean.timer
- systemd-tmpfiles-setup-dev-early.service
- systemd-tmpfiles-setup-dev.service
- tmp.mount
.wslconfig
为 WSL 2上运行的所有已安装的发行版配置全局设置,默认该文件不存在,必须创建并存储在
%UserProfile%
目录中才能应用这些配置设置,打开该位置
start %UserProfile%
示例文件
# Settings apply across all Linux distros running on WSL 2
[wsl2]# Limits VM memory to use no more than 4 GB, this can be set as whole numbers using GB or MB
memory=4GB # Sets the VM to use two virtual processors
processors=2# Specify a custom Linux kernel to use with your installed distros.
# The default kernel used can be found at https://github.com/microsoft/WSL2-Linux-Kernel
# kernel=C:\\temp\\myCustomKernel# Sets additional kernel parameters, in this case enabling older Linux base images such as Centos 6
# kernelCommandLine = vsyscall=emulate# 是否在“安全模式”中运行 WSL,这会禁用许多功能,应用于恢复处于错误状态的发行版
# 仅适用于 Windows 11 和 WSL 版本 0.66.2+
safeMode = false# Sets amount of swap storage space to 8GB, default is 25% of available RAM。0 表示无交换文件
swap=1GB# Sets swapfile path location, default is %USERPROFILE%\AppData\Local\Temp\swap.vhdx
swapfile=D:\\soft\\wk\\wsldata\\wsl-swap.vhdx# Windows 是否能够回收分配给 WSL 2 虚拟机的未使用内存
# Disable page reporting so WSL retains all allocated memory claimed from Windows and releases none back when free
pageReporting=true# 在 WSL 中打开或关闭对 GUI 应用程序的支持
guiApplications = true# Turn on default connection to bind WSL 2 localhost to Windows localhost. Setting is ignored when networkingMode=mirrored
localhostforwarding=true# 用于打开或关闭嵌套虚拟化的布尔值,使其他嵌套 VM 能够在 WSL 2 中运行。 仅适用于 Windows 11
# Disables nested virtualization
nestedVirtualization=false# 用于在 WSL 2 发行版实例启动时打开显示 dmesg 内容的输出控制台窗口。 仅适用于 Windows 11
# Turns on output console showing contents of dmesg when opening a WSL 2 distro for debugging
debugConsole=false# VM 在关闭之前处于空闲状态的毫秒数。 仅适用于 Windows 11
vmIdleTimeout = 60000# 仅适用于 networkingMode = NAT。
# 通知 WSL 将 Linux 中的 DNS 服务器配置为主机上的 NAT
# 设置为 false 会将 DNS 服务器从 Windows 镜像到 Linux
dnsProxy = true# 如果值为 mirrored,则会启用镜像网络模式。
# 默认或无法识别的字符串会生成 NAT 网络。需要 Windows 11 版本 22H2 或更高版本
networkingMode = NAT# 如果设置为 true,则 Windows 防火墙规则以及特定于 Hyper-V 流量的规则可以筛选 WSL 网络流量
# 需要 Windows 11 版本 22H2 或更高版本
firewall = true# 是否将 DNS 请求从 WSL 代理到 Windows 的方式。需要 Windows 11 版本 22H2 或更高版本
dnsTunneling = true# WSL 是否使用 Windows 的 HTTP 代理信息。仅在 Windows 11 中可用
autoProxy = true# 设置存储 Linux 发行版(例如 Ubuntu)文件系统的虚拟硬盘 (VHD) 大小
# 可用于限制分发文件系统允许占用的最大大小
defaultVhdSize = 200GB# Enable experimental features
[experimental]
# 检测空闲 CPU 使用率后,自动释放缓存的内存
# 设置为 gradual 以慢速释放,设置为 dropcache 以立即释放缓存的内存
# disabled 禁用
autoMemoryReclaim = dropcache# 如果设置为 true,则任何新创建的 VHD 将自动设置为稀疏虚拟硬盘文件
# 只分配实际使用的磁盘空间,而不是预先分配整个文件大小的磁盘空间
sparseVhd = true# 仅当 wsl2.dnsTunneling 设置为 true 时才适用
# 如果设置为 true,Windows 将从 DNS 请求中提取问题并尝试解决该问题,从而忽略未知记录
# 需要 Windows 11 版本 22H2 或更高版本
bestEffortDnsParsing = false# 仅当 wsl2.dnsTunneling 设置为 true 时才适用
# 指定启用 DNS 隧道的情况下将在 Linux resolv.conf 文件中配置的 nameserver
# 需要 Windows 11 版本 22H2 或更高版本
# dnsTunnelingIpAddress = 10.255.255.254 # 仅当 wsl2.autoProxy 设置为 true 时才适用
# 配置启动 WSL 容器时,WSL 等待检索 HTTP 代理信息的时长(以毫秒为单位)
# 如果代理设置在此时间之后解析,则必须重启 WSL 实例才能使用检索到的代理设置
# 仅在 Windows 11 中可用
initialAutoProxyTimeout = 1000# 仅当 wsl2.networkingMode 设置为 mirrored 时才适用
# 指定 Linux 应用程序可以绑定到哪些端口(即使该端口已在 Windows 中使用)
# 通过此设置,应用程序能够仅侦听 Linux 中的流量端口
# 因此即使该端口在 Windows 上用于其他用途,这些应用程序也不会被阻止
# 例如,WSL 将允许绑定到 Linux for Docker Desktop 中的端口 53,因为它只侦听来自 Linux 容器中的请求
# 需要 Windows 11 版本 22H2 或更高版本
# ignoredPorts = 3000,9000,9090# 仅当 wsl2.networkingMode 设置为 mirrored 时才适用
# 如果设置为 True,将会允许容器通过分配给主机的 IP 地址连接到主机,或允许主机通过此方式连接到容器
# 始终可以使用 127.0.0.1 环回地址,此选项也允许使用所有额外分配的本地 IP 地址
# 仅支持分配给主机的 IPv4 地址
# 需要 Windows 11 版本 22H2 或更高版本
hostAddressLoopback = false
更换wsl默认安装位置
wsl默认安装到了
C:\Users\开机账号\AppData\Local\Packages下的
比如类似这样的:4210OracleAmericaInc.OracleLinux8.5_dm93watqnc2oz
每个子系统一个文件夹,该子目录下的LocalState文件夹里就一个文件,占用空间很大,我们可以通过导出导入方式进行更改。
导出wsl
wsl --export 默认是tar格式
wsl --export Ubuntu D:/XXX/Ubuntu.tar
wsl --export OracleLinux_8_5 E:/wsl/OracleLinux_8_5.tar
取消wsl注册
wsl --unregister <DistributionName>
取消注册后,LocalState文件夹下的大文件被自动删除,运行 wsl --list 将不会再列出
wsl --ungerister Ubuntu
wsl --ungerister OracleLinux_8_5
导入wsl
wsl --import
wsl --import Ubuntu E:/wsl/ubuntu Ubuntu.tar
wsl --import OracleLinux_8_5 E:/wsl/oracleLinux OracleLinux_8_5.tar
podman
Podman是开源软件,大多数公司应该都允许直接使用,其实就是几个二进制命令文件而已,下载地址
Podman Desktop是一个可视化的操作界面,不安装这个也是OK的,熟悉命令的话,类似Docker和Docker Desktop的关系。
完成后,在命令行执行
# 这个需要下载一些东东,要花一些时间
podman machine init
# 启动
podman machine start
# 查看镜像
podman images
# 拉取镜像
podman pull apache/flink
上面在执行podman machine init时,默认安装podman-machine-default在了C盘,并且磁盘增加,即使删除一些镜像后不会缩小,如何更改位置,可自行研究下,目前本人还没尝试更改。由于podman也依赖于wsl,因此本人直接使用的就是wsl。
相关文章:

DockerDesktop替换方案
背景 由于DockerDesktop并非开源软件,如果在公司使用,可能就有一些限制,那是不是除了使用DockerDesktop外,就没其它办法了呢,现在咱们来说说替换方案。 WSL WSL是什么,可自行百度,这里引用WS…...

力扣热题100之搜索二维矩阵 II
题目 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 代码 方法一:直接全体遍历 这个方法很直接,但是居然没有超时,…...

docker操作镜像-以mysql为例
Docker安装使用-CSDN博客 docker操作镜像-以mysql为例 当安装一个新的镜像时可以登录https://hub.docker.com/直接搜索想要安装的镜像,查看文档 1)拉取镜像 docker pull mysql 或者 docker pull mysql:版本号 然后直接跳到第4)步即可 2…...

使用OpenCV 和 Dlib 进行卷积神经网络人脸检测
文章目录 引言1.准备工作2.代码解析2.1 导入必要的库2.2 加载CNN人脸检测模型2.3 加载并预处理图像2.4 进行人脸检测2.5 绘制检测结果2.6 显示结果 3.完整代码4.性能考虑5.总结 引言 人脸检测是计算机视觉中最基础也最重要的任务之一。今天我将分享如何使用dlib库中的CNN人脸检…...

React 实现 JWT 登录验证的最小可运行示例
下面是一个用 React 实现 JWT 登录验证的最小可运行示例,包含: React 前端:登录、保存 Token、获取用户数据。模拟后端:用 mock API(你也可以接真后端)。 🧱 技术栈 React(使用 Vi…...

Power Query精通指南1:查询结构设计、数据类型、数据导入与迁移(平面文件、Excel、Web)
文章目录 零、Power Query简介0.1 Power Query 主要功能0.2 Power Query 的优势0.3 Power Query 组件 一、Power Query数据处理基本流程1.1 前期准备1.2 提取1.3 转换1.3.1 Power Query 编辑器界面1.3.2 默认转换1.3.3 自定义转换 1.4 加载1.4.1 自动检测数据类型1.4.2 重命名查…...

vue2开发者sass预处理注意
vue2开发者sass预处理注意 sass的预处理器,早年使用node-sass,也就是vue2最初默认的编译器。 sass官方推出了dart-sass来替代。 node-sass已经停维很久了。 vue3默认使用的是dart-sass。 Uniapp的官方文档截图 从 HBuilderX 4.56 ,vue2 …...
淘宝按图搜索商品(拍立淘)Java 爬虫实战指南
在电商领域,按图搜索商品功能为用户提供了更直观、便捷的购物体验。淘宝的拍立淘功能更是凭借其强大的图像识别技术,成为许多开发者和商家关注的焦点。本文将详细介绍如何利用 Java 爬虫技术实现淘宝按图搜索商品功能,包括注册账号、上传图片…...
安卓基础(封装引用)
情况 1:普通 Java 项目(非 Android) src/ ├── com/ │ ├── example/ │ │ ├── utils/ │ │ │ └── A.java // 工具类 A │ │ └── main/ │ │ └── B.java // 主类 B A…...
深入理解 Docker 网络原理:构建高效、灵活的容器网络
在现代软件开发中,Docker 已经成为了容器化技术的代名词,广泛应用于开发、测试和生产环境。Docker 使得开发者能够将应用及其依赖打包成一个轻量级的容器,并通过 Docker 容器化技术来实现高效的部署与管理。 然而,在日常使用 Dock…...

使用 Selenium 爬取动态网页数据 —— 实战与坑点详解
本文记录了笔者在爬取网页数据过程中遇到的各种技术挑战,包括页面动态渲染、JavaScript 注入等问题,并最终给出一个可运行的完整方案。 文章目录 网页获取不到数据🚀 尝试用 Selenium 渲染页面 网页获取不到数据 某网页数据依赖大量 JavaSc…...
React 笔记[1] hello world
React 笔记[1] hello world 明白了!既然你已经安装了 Node.js,我们可以 从零开始搭建一个 React Tailwind CSS 的 Hello World 项目。我将一步步列出操作指令,你只需要在终端里依次执行。 ✅ 第一步:初始化项目 mkdir my-hello…...
Verilog Test Fixture 时钟激励
1、占空比50%时钟产生 always begin<clock> 1b0 ;#<PERIOD/2> ;<clock> 1b1 ;#<PERIOD/2> ; end reg <clock> 1b0 ;alwaysbegin#<PERIOD/2> ;<clock> ~<clock> ;end 2…...

守护数字家园:个人博客安全防护指南
前言 在之前的文章《WordPress个人博客搭建(一)》《WordPress个人博客搭建(二)》《WordPress个人博客搭建(三)》中,我们已经在非凡云云服务器上,借助1Panel搭建起属于自己的数字庭院…...

【网络编程】三、TCP网络套接字编程
文章目录 TCP通信流程Ⅰ. 服务器日志类实现Ⅱ. TCP服务端1、服务器创建流程2、创建套接字 -- socket3、绑定服务器 -- bind🎏4、服务器监听 -- listen🎏5、获取客户端连接请求 -- acceptaccept函数返回的套接字描述符是什么,不是已经有一个了…...

trae ai编程工具
Trae,致力于成为真正的 AI 工程师(The Real Al Engineer)。Trae 旗下的 AI IDE 产品,以智能生产力为核心,无缝融入你的开发流程,与你默契配合,更高质量、高效率完成每一个任务。 版本差异 国内…...
STM32系统定时器以及微秒延时函数分析
在CubeMX生成的工程中系统时钟节拍配置的函数为: __weak HAL_StatusTypeDef HAL_InitTick(uint32_t TickPriority) {HAL_StatusTypeDef status HAL_OK;/* Check uwTickFreq for MisraC 2012 (even if uwTickFreq is a enum type that doesnt take the value zero)…...

神经网络发展历程——积跬步至千里
神经网络类型层线性or非线性创新问题备注感知器单层线性模型,输出 1 1 1, − 1 -1 −1误差反馈学习阈值函数不可导,构造学习规则与感知器准则等价线性神经元单层线性模型梯度下降法训练参数线性函数,多层仍是线性变换本质上是最小…...
Java 24:重构数字信任边界 —— 后量子时代的智能安全防御体系构建
引言 在量子计算阴影与 AI 驱动攻击交织的网络安全新纪元,Java 平台正经历着自诞生以来最深刻的安全架构革新。作为企业级应用的核心基础设施,Java 24 不仅延续了 “一次编写,处处运行” 的跨平台基因,更以后量子密码学引擎、动态…...

荣耀A8互动娱乐组件部署实录(第2部分:界面逻辑与资源加载机制)
作者:从 Spine 骨骼动画里抠图三小时没睡的美术兼前端苦工 一、界面整体架构拆解 荣耀A8组件采用的是典型的分模块 UI 架构,即:主界面为入口容器,不同子页面(如商城、银行、客服、游戏入口)以逻辑功能划分…...

mac 使用 Docker 安装向量数据库Milvus独立版的保姆级别教程
Milvus 特点:开源的云原生向量数据库,支持多种索引类型和GPU加速,能够在亿级向量规模下实现低延迟高吞吐。具有灵活的部署选项和强大的社区支持。 适用场景:适合处理超大规模数据和高性能需求的应用,如图像搜索、推荐…...

技术视界 | 青龙机器人训练地形详解(一):如何创建一个地形
机器人强化学习中的地形训练是利用强化学习算法让机器人在不同地形环境中通过试错学习最优行为策略的过程,通过环境建模、策略学习与优化等环节,使机器人能够自主适应复杂多变的地形,提高其移动效率、稳定性和自主性,减少人为干预…...
网络安全系列--《文章1:网络安全基础与核心概念》
课程1:网络安全基础与核心概念 学习内容 1. 网络安全定义 网络安全是通过技术、管理及法律手段保护网络系统的硬件、软件及数据,使其免受破坏、篡改或泄露,确保系统稳定运行并提供可靠服务。其核心目标包括保密性、完整性、可用性、可控性及…...

2025-05-04 Unity 网络基础6——TCP心跳消息
文章目录 1 Disconnect 方法2 心跳消息 在客户端主动退出时,我们会调用 socket 的 ShutDown() 和 Close() 方法,但调用这两个方法后,服务器端无法得知客户端已经主动断开。 本文主要介绍在网络通信中,如何服务端如何判断客…...

word导出pdf带有目录导航栏-error记
1、打开word文档——>点击"视图"选项卡——>勾选"导航窗格" 2、点击"文件"——>导出——>创建PDF/XPS 3、点击"选项"——>勾选"创建书签时使用(C)" "标题(H)" 4、点击"确定"——>点击…...

1. 视频基础知识
1. 图像基础概念 像素:像素是一个图片的基本单位,pix是英语单词picture,加上英语单词“元素element”,就得到了pixel,简称px。所以“像素”有“图像元素”之意。分辨率:指的是图像的大小或者尺寸。比如 19…...
VTK 数据结构和算法类介绍
基本数据结构类 vtkPolyData 描述: 表示多边形几何结构 主要属性: Points: vtkPoints对象,存储顶点坐标 Verts: vtkCellArray对象,存储顶点数据 Lines: vtkCellArray对象,存储线数据 Polys: vtkCellArray对象,存储多边形数据 Strips: vtkCellArray对象,存储三角带数据 常…...
云计算的基础概论
一、云计算基础概念 1. 云计算定义 • 英文:Cloud Computing • 定义:通过互联网(Internet)按需提供可扩展的计算资源(如服务器、存储、数据库、网络、软件等),用户无需管理底层基础设施。 …...

HarmonyOS-hdc远程网络方式连接设备
hdc工具使用手册 1 hdc简介 hdc(OpenHarmony Device Connector)是为开发人员提供的用于设备连接调试的命令行工具,pc端开发机使用命令行工具hdc,该工具需支持部署在Windows/Linux/Mac等系统上与OpenHarmony设备(或模…...
【计算机网络网络层深度解析】从IP协议到路由优化
目录 前言技术背景与价值当前技术痛点解决方案概述目标读者说明 一、技术原理剖析核心概念图解核心作用讲解关键技术模块说明技术选型对比 二、实战演示环境配置要求核心实验实现实验1:IPv6地址配置实验2:OSPF路由配置实验3:NAT转换验证 运行…...