SylixOS网卡多 IP 配置

概述

网卡多 IP 是指在同一个网络接口上配置和绑定多个 IP 地址。
引进网卡多 IP 的目的主要有以下几个:

  • 提供服务高可用性。通过在同一接口绑定多个 IP 地址,然后在服务端使用这些 IP 地址启动多个服务实例。这样在任意一 IP 出现问题时,可以通过其他 IP 继续访问服务,提高服务的高可用性。
  • 特殊用途 IP。我们可以在一个接口上配置公网 IP、内网 IP 和特殊用途 IP,用于不同用途。多 IP 可以满足一块接口绑定不同类型 IP 的需求。

所以,引进网卡多 IP,主要是为了更灵活和更加充分的利用网络接口提供的网络能力。

实现方式

在 SylixOS 系统中,使用 ifmip 命令来给网卡添加多个 IP 地址。在Shell 界面通过 help ifmip 可以查看到该命令的实际使用方式。

[root@sylixos:/root]# help ifmip
net interface add / delete secondary IPv4 address.
NOTICE: a fake interface 'mi*' will be create / delete.
ifmip [ifname] [{add | del}] [ipv4 address [netmask]]

网卡添加第二个 IP

  • 在 en1 网卡上添加一个新的 IP 地址 172.168.0.126,子网掩码是 255.255.255.0 。
[root@sylixos:/root]# ifmip en1 add 172.168.0.126 255.255.255.0
  • 使用 ifconfig 命令查看新添加的 IP, mi3 网卡的地址表示 en1 网卡新添加的 IP。
[root@sylixos:/root]# ifconfig
mi3       Link encap: Ethernet HWaddr: 00:11:22:33:44:98
          Mif: en1 Ifidx: 4 DHCP: D4 D6 Spd: 1000 Mbps
          inet addr: 172.168.0.126 netmask: 255.255.255.0
          gateway: 0.0.0.0 broadcast: 172.168.0.255
          UP BROADCAST RUNNING  MTU:1500  Metric:1

en2       Link encap: Ethernet HWaddr: be:7a:3c:c9:9a:e5
          Dev: dw_1 Ifidx: 3 DHCP: D4 D6 Spd: N/A
          inet addr: 10.4.130.210 netmask: 255.255.255.0
          gateway: 10.4.0.1 broadcast: 10.4.130.255
          inet6 addr: fe80::bc7a:3cff:fec9:9ae5 Scope:Link<T0>
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          collisions:0 txqueue:0 tcpaf:2 tcpwnd:65535
          RX ucast packets:0 nucast packets:0 dropped:0
          TX ucast packets:0 nucast packets:0 dropped:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

en1       Link encap: Ethernet HWaddr: 00:11:22:33:44:98
          Dev: dw_0 Ifidx: 2 DHCP: D4 D6 Spd: 1000 Mbps
          inet addr: 10.4.120.211 netmask: 255.255.0.0
          gateway: 10.4.0.1 broadcast: 10.4.255.255
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          collisions:0 txqueue:512 tcpaf:2 tcpwnd:65535
          RX ucast packets:4 nucast packets:47860 dropped:0
          TX ucast packets:0 nucast packets:6 dropped:0
          RX bytes:2904343 (2.7 MB)  TX bytes:396 (396.0 B)

lo0       Link encap: Local Loopback
          Dev: N/A Ifidx: 1 DHCP: D4 D6 Spd: N/A
          inet addr: 127.0.0.1 netmask: 255.0.0.0
          P-to-P: 127.0.0.1 broadcast: N/A
          inet6 addr: ::1 Scope:Loopback
          UP LOOPBACK RUNNING  MTU:0  Metric:1
          collisions:0 txqueue:0 tcpaf:2 tcpwnd:262140
          RX ucast packets:3 nucast packets:0 dropped:0
          TX ucast packets:3 nucast packets:0 dropped:0
          RX bytes:168 (168.0 B)  TX bytes:168 (168.0 B)

dns0: 0.0.0.0
dns1: 0.0.0.0
dns2: 0.0.0.0
dns3: 0.0.0.0
default device is: en1
list net interface: 4

网卡删除第二个 IP

  • 在 en1 网卡上删除上文添加的 IP 地址 172.168.0.126。
[root@sylixos:/root]# ifmip en1 del 172.168.0.126
  • 使用 ifconfig 命令查看上文新添加的 IP 已经被成功删除。
en2       Link encap: Ethernet HWaddr: be:7a:3c:c9:9a:e5
          Dev: dw_1 Ifidx: 3 DHCP: D4 D6 Spd: N/A
          inet addr: 10.4.130.210 netmask: 255.255.255.0
          gateway: 10.4.0.1 broadcast: 10.4.130.255
          inet6 addr: fe80::bc7a:3cff:fec9:9ae5 Scope:Link<T0>
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          collisions:0 txqueue:0 tcpaf:2 tcpwnd:65535
          RX ucast packets:0 nucast packets:0 dropped:0
          TX ucast packets:0 nucast packets:0 dropped:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

en1       Link encap: Ethernet HWaddr: 00:11:22:33:44:98
          Dev: dw_0 Ifidx: 2 DHCP: D4 D6 Spd: 1000 Mbps
          inet addr: 10.4.120.211 netmask: 255.255.0.0
          gateway: 10.4.0.1 broadcast: 10.4.255.255
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          collisions:0 txqueue:512 tcpaf:2 tcpwnd:65535
          RX ucast packets:47 nucast packets:432195 dropped:0
          TX ucast packets:6 nucast packets:6 dropped:0
          RX bytes:26538743 (25.3 MB)  TX bytes:720 (720.0 B)

lo0       Link encap: Local Loopback
          Dev: N/A Ifidx: 1 DHCP: D4 D6 Spd: N/A
          inet addr: 127.0.0.1 netmask: 255.0.0.0
          P-to-P: 127.0.0.1 broadcast: N/A
          inet6 addr: ::1 Scope:Loopback
          UP LOOPBACK RUNNING  MTU:0  Metric:1
          collisions:0 txqueue:0 tcpaf:2 tcpwnd:262140
          RX ucast packets:3 nucast packets:0 dropped:0
          TX ucast packets:3 nucast packets:0 dropped:0
          RX bytes:168 (168.0 B)  TX bytes:168 (168.0 B)

dns0: 0.0.0.0
dns1: 0.0.0.0
dns2: 0.0.0.0
dns3: 0.0.0.0
default device is: en1
list net interface: 3

持久设置辅助 ip

使用 ifmip 命令只能临时修改辅助 ip,想要持久修改可以通过 ifparam.ini 文件来实现。
在 ifparam.ini 文件中增加 mipaddr、mgateway、mnetmask 字段配置即可增加一组扩展 ip 地址,一个网卡可以扩展多个 IP 地址。

[root@sylixos:/root]# cat /etc/ifparam.ini
[e1000_0]
enable=1
ipaddr=192.168.196.88
gateway=192.168.196.1
netmask=255.255.255.0
#dhcp=1
#dhcp6
mipaddr=192.168.1.88
mgateway=192.168.1.1
mnetmask=255.255.255.0
default=1
[root@sylixos:/root]# ifconfig
mi2       Link encap: Ethernet HWaddr: ce:63:a8:1e:22:5c
          Mif: en1 Ifidx: 3 DHCP: D4 D6 Spd: 1000 Mbps
          inet addr: 192.168.1.88 netmask: 255.255.255.0
          gateway: 192.168.1.1 broadcast: 192.168.1.255
          UP BROADCAST RUNNING  MTU:1500  Metric:1

en1       Link encap: Ethernet HWaddr: ce:63:a8:1e:22:5c
          Dev: e1000_0 Ifidx: 2 DHCP: D4 D6 Spd: 1000 Mbps
          inet addr: 192.168.196.88 netmask: 255.255.255.0
          gateway: 192.168.196.1 broadcast: 192.168.196.255
          inet6 addr: fe80::cc63:a8ff:fe1e:225c Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          collisions:0 txqueue:0 tcpaf:2 tcpwnd:65535
          RX ucast packets:3 nucast packets:842 dropped:0
          TX ucast packets:1 nucast packets:7 dropped:0
          RX bytes:65476 (63.9 KB)  TX bytes:620 (620.0 B)

lo0       Link encap: Local Loopback
          Dev: N/A Ifidx: 1 DHCP: D4 D6 Spd: N/A
          inet addr: 127.0.0.1 netmask: 255.0.0.0
          P-to-P: 127.0.0.1 broadcast: N/A
          inet6 addr: ::1 Scope:Loopback
          UP LOOPBACK RUNNING  MTU:0  Metric:1
          collisions:0 txqueue:0 tcpaf:2 tcpwnd:262140
          RX ucast packets:3 nucast packets:0 dropped:0
          TX ucast packets:3 nucast packets:0 dropped:0
          RX bytes:168 (168.0 B)  TX bytes:168 (168.0 B)

dns0: 114.114.114.114
dns1: 0.0.0.0
dns2: 0.0.0.0
dns3: 0.0.0.0
default device is: en1
list net interface: 3
[root@sylixos:/root]#
[root@sylixos:/root]# ping 192.168.1.199
Pinging 192.168.1.199

Reply from 192.168.1.199: bytes=32 time=0.955ms TTL=64
Reply from 192.168.1.199: bytes=32 time=0.550ms TTL=64
Reply from 192.168.1.199: bytes=32 time=0.690ms TTL=64
Reply from 192.168.1.199: bytes=32 time=0.567ms TTL=64

Ping statistics for 192.168.1.199:
    Packets: Send = 4, Received = 4, Lost = 0(0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0.550ms, Maximum = 0.955ms, Average = 0.690ms

[root@sylixos:/root]# ping 192.168.196.199
Pinging 192.168.196.199

Reply from 192.168.196.199: bytes=32 time=0.259ms TTL=64
Reply from 192.168.196.199: bytes=32 time=0.608ms TTL=64
Reply from 192.168.196.199: bytes=32 time=0.949ms TTL=64
Reply from 192.168.196.199: bytes=32 time=0.660ms TTL=64

Ping statistics for 192.168.196.199:
    Packets: Send = 4, Received = 4, Lost = 0(0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0.259ms, Maximum = 0.949ms, Average = 0.619ms

[root@sylixos:/root]#

实际场景

当一个设备只有一个网络接口,要与多台不同网段的主机通信,为了避免频繁地修改设备地址,可以将 SylixOS 设备的网卡改成多 IP 模式,这样只需要每次插拔网线,而不再用频繁往复地修改设备 IP 地址。如果三台设备都通过交换机来连接,则 SylixOS 设备可以同时和两个不同网段的主机通信。

  • 进入 SylixOS 设备的Shell界面,通过 ifconfig 命令查看网络接口信息。
[root@sylixos:/root]# ifconfig
en1       Link encap: Ethernet HWaddr: 00:0a:35:00:01:aa
          Dev: zynq0 Ifidx: 2 DHCP: D4 D6 Spd: 1000 Mbps
          inet addr: 10.4.120.11 netmask: 255.255.0.0
          gateway: 10.4.0.1 broadcast: 10.4.255.255
          inet6 addr: fe80::20a:35ff:fe00:1aa Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          collisions:0 txqueue:0 tcpaf:2 tcpwnd:131070
          RX ucast packets:0 nucast packets:4690 dropped:0
          TX ucast packets:0 nucast packets:9 dropped:0
          RX bytes:283649 (277.0 KB)  TX bytes:622 (622.0 B)

lo0       Link encap: Local Loopback
          Dev: N/A Ifidx: 1 DHCP: D4 D6 Spd: N/A
          inet addr: 127.0.0.1 netmask: 255.0.0.0
          P-to-P: 127.0.0.1 broadcast: N/A
          inet6 addr: ::1 Scope:Loopback
          UP LOOPBACK RUNNING  MTU:0  Metric:1
          collisions:0 txqueue:0 tcpaf:2 tcpwnd:262140
          RX ucast packets:3 nucast packets:0 dropped:0
          TX ucast packets:3 nucast packets:0 dropped:0
          RX bytes:168 (168.0 B)  TX bytes:168 (168.0 B)

dns0: 0.0.0.0
dns1: 0.0.0.0
dns2: 0.0.0.0
dns3: 0.0.0.0
default device is: en1
list net interface: 2
  • 在网卡 en1 上添加一个 IP 地址 192.168.11.5,子网掩码是 255.255.255.0。
[root@sylixos:/root]# ifmip en1 add 192.168.11.5 255.255.255.0
  • 通过 ifconfig 命令查看网络接口信息。
[root@sylixos:/root]# ifconfig
mi2       Link encap: Ethernet HWaddr: 00:0a:35:00:01:aa
          Mif: en1 Ifidx: 3 DHCP: D4 D6 Spd: 1000 Mbps
          inet addr: 192.168.11.5 netmask: 255.255.255.0
          gateway: 0.0.0.0 broadcast: 192.168.11.255
          UP BROADCAST RUNNING  MTU:1500  Metric:1

en1       Link encap: Ethernet HWaddr: 00:0a:35:00:01:aa
          Dev: zynq0 Ifidx: 2 DHCP: D4 D6 Spd: 1000 Mbps
          inet addr: 10.4.120.11 netmask: 255.255.0.0
          gateway: 10.4.0.1 broadcast: 10.4.255.255
          inet6 addr: fe80::20a:35ff:fe00:1aa Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          collisions:0 txqueue:0 tcpaf:2 tcpwnd:131070
          RX ucast packets:0 nucast packets:6429 dropped:0
          TX ucast packets:0 nucast packets:10 dropped:0
          RX bytes:389041 (379.9 KB)  TX bytes:664 (664.0 B)

lo0       Link encap: Local Loopback
          Dev: N/A Ifidx: 1 DHCP: D4 D6 Spd: N/A
          inet addr: 127.0.0.1 netmask: 255.0.0.0
          P-to-P: 127.0.0.1 broadcast: N/A
          inet6 addr: ::1 Scope:Loopback
          UP LOOPBACK RUNNING  MTU:0  Metric:1
          collisions:0 txqueue:0 tcpaf:2 tcpwnd:262140
          RX ucast packets:3 nucast packets:0 dropped:0
          TX ucast packets:3 nucast packets:0 dropped:0
          RX bytes:168 (168.0 B)  TX bytes:168 (168.0 B)

dns0: 0.0.0.0
dns1: 0.0.0.0
dns2: 0.0.0.0
dns3: 0.0.0.0
default device is: en1
list net interface: 3
[root@sylixos:/root]#
  • 通过网线将 SylixOS 设备和 主机 A 相连,在 SylixOS 设备的Shell界面向主机 A 发送 ping 包,通信正常,证明新加的 IP 地址功能正常。
[root@sylixos:/root]# ping 192.168.11.2
Pinging 192.168.11.2

Reply from 192.168.11.2: bytes=32 time=0.213ms TTL=255
Reply from 192.168.11.2: bytes=32 time=0.203ms TTL=255
Reply from 192.168.11.2: bytes=32 time=0.202ms TTL=255
Reply from 192.168.11.2: bytes=32 time=0.204ms TTL=255

Ping statistics for 192.168.11.2:
    Packets: Send = 4, Received = 4, Lost = 0(0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0.202ms, Maximum = 0.213ms, Average = 0.205ms

[root@sylixos:/root]#
  • 通过网线将 SylixOS 设备和 主机 B 相连,在 SylixOS 设备的Shell界面向主机 B 发送 ping 包,通信正常,证明原有的 IP 地址功能正常。
[root@sylixos:/root]# ping 10.4.0.105
Pinging 10.4.0.105

Reply from 10.4.0.105: bytes=32 time=0.689ms TTL=64
Reply from 10.4.0.105: bytes=32 time=0.677ms TTL=64
Reply from 10.4.0.105: bytes=32 time=0.686ms TTL=64
Reply from 10.4.0.105: bytes=32 time=0.644ms TTL=64

Ping statistics for 10.4.0.105:
    Packets: Send = 4, Received = 4, Lost = 0(0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0.644ms, Maximum = 0.689ms, Average = 0.674ms

[root@sylixos:/root]#

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Ollama教程——使用Ollama与LangChain实现Function Calling(函数调用)的详细教程(一)

@[toc](Ollama教程——使用Ollama与LangChain实现Function Calling(函数调用)的详细教程(一)) 在本教程中,我们将介绍如何使用Ollama和LangChain实现函数调用任务。这种方法可以大大提高AI模型在特定任务上的性能。本文将详细解释如何设置、使用OllamaFunctions,并通过多个…

openEuler Embedded 系统 实时性

openEuler Embedded 系统 & 实时性 1 介绍1.1 概述1.2 openEuler 23.09 Embedded1.3 openEuler 重要节点1.4 系统构建工具1.5 openEuler Embedded 诞生的需求背景运动控制系统实时性需求高嵌入式OS主要供应商来自老美&#xff0c;市场碎片化严重 1.6 总体架构1.7 openEuler…

AI预测体彩排3采取888=3策略+和值012路一缩定乾坤测试6月3日预测第10弹

昨天的第二套方案已命中&#xff01;今天继续基于8883的大底进行测试&#xff0c;今天继续测试&#xff0c;好了&#xff0c;直接上结果吧~ 首先&#xff0c;888定位如下&#xff1a; 百位&#xff1a;6,4,7,8,2,9,1,0 十位&#xff1a;2,3,4,1,6,7,8,…

000002 - Hadoop环境安装

Hadoop及其大数据生态圈 1. 背景2. 实践2.1 Linux服务器准备2.2 在其中一台服务器上安装JDK2.3 在其中一台服务器上安装HADOOP2.4 本地模式运行一个hadoop案例 3. 自动化部署 1. 背景 要搭建Hadoop集群环境&#xff0c;我们需要执行如下 准备三台Linux服务器&#xff0c;服务…

基于三元组一致性学习的单目内窥镜里程计估计

文章目录 TCL: Triplet Consistent Learning for Odometry Estimation of Monocular Endoscope摘要方法实验结果 TCL: Triplet Consistent Learning for Odometry Estimation of Monocular Endoscope 摘要 单目图像中深度和姿态的估计对于计算机辅助导航至关重要。由于很难获…

Rye一个强大的Python包管理工具

这是一个由Flask框架作者用rust开发并维护的一个python包管理工具&#xff0c;经过个人体验和使用还是非常不错的&#xff0c;尽管它还并非正式版本&#xff0c;但其易用性和便捷性均值得我们来体验&#xff01; 其中他对python各版本的管理比其他同类工具要好&#xff0c;安装…

Cognita:一款面向生产环境的开源、模块化 RAG 框架

一、引言&#xff1a;RAG 技术的兴起和挑战 1.1、从关键词搜索到 RAG 在大模型技术火起来之前&#xff0c;我们处理海量数据中的信息检索问题&#xff0c;往往依靠的是传统的关键词搜索和全文检索方法。这些方法虽然在一定程度上帮助我们找到了信息&#xff0c;但它们在语义理…

SpringBoot——全局异常处理

目录 异常 项目总结 新建一个SpringBoot项目 pom.xml Result&#xff08;通用的响应结果类&#xff09; MyBusinessException自定义异常类 GlobalExceptionHandler全局异常处理类 ExceptionController控制器 SpringbootExceptionApplication启动类 参考文章&#xff1a…

【计算机-ARM】

计算机-ARM ■ 指令集■ 1. RISC■ 2. CISC ■ ARM简介■ 1.■ 2. ■ ARM-CPU体系架构■ 1. M0■ 2. M3■ 3. M4■ 4. M7■ 5. M7■ 6. M7 ■ ARM-寄存器■ 1. 通用寄存器■ 2.■ 3.■ 4. ■ ARM-工作模式■ ARM-寄存器组■ ARM-异常向量表■ 由于soc0x00000000 是存放IROM芯片…

基于.NetCore和ABP.VNext的项目实战七:全局异常处理并日志记录

ABP框架已经默认为我们实现了全局的异常模块,这里我们自定义全局异常模块,先在HelloWorldController中写一个异常接口,测试下ABP的默认全局异常: [HttpGet][Route("Exception")]public string Exception(){throw new NotImplementedException("这是一个未实…

常用技巧-PPT时你真的做对了吗?

常用技巧-PPT时你真的做对了吗&#xff1f; PPT时通常会通过多种表现手法将信息转化为图表&#xff0c;更好的凸显自己的专业素养。将数据转化为图表是对的&#xff0c;那么你真的用对了图表了吗&#xff1f; 话不多说&#xff0c;直接上干货&#xff1a; 时间线图 时间线是…

Jmeter实战教程入门讲解

前言 通过前面对Jmeter元件的讲解&#xff0c;大家应该都知道常用元件的作用和使用了。编写Jmeter脚本前我们需要知道Jmeter元件的执行顺序&#xff0c;可以看看我这篇性能测试学习之路&#xff08;三&#xff09;—初识Jmeter来了解下。下面我将以工作中的一个简单的实例带大…

突破性技术: 大语言模型LLM量化激活outliers异常值抑制

LLM过去有两种突破性技术大大提升了量化精度&#xff0c;分别是group-wise量化和GPTQ/AWQ量化。前者相比于过去的per-tensor和per-channel/per-axis量化提出了更细粒度的对channel拆分为更小单元的量化方式&#xff0c;后者通过巧妙的算法明显提升了4bit量化的精度。 LLM量化存…

【面试八股总结】MySQL索引(二):B+树数据结构、索引使用场景、索引优化、索引失效

参考资料&#xff1a;小林coding、阿秀 一、为什么InnoDB采用B树作为索引数据结构&#xff1f; B 树是一个自平衡多路搜索树&#xff0c;每一个节点最多可以包括 M 个子节点&#xff0c;M 称为 B 树的阶&#xff0c;所以 B 树就是一个多叉树。 B 树与 B 树的差异&#xff1a;…

【UE5 刺客信条动态地面复刻】实现无界地面01:动态生成

为了快速上手UE5&#xff0c;开启了《复刻刺客信条动态地面》的技术篇章&#xff0c;最终希望复刻刺客信条等待界面的效果&#xff0c;这个效果大体上包括&#xff1a; 基础的地面随着任务走动消失和出现的基础效果地板的Bloom和竖起的面片辉光效果 既然是新手&#xff0c;&am…

CSS学习笔记之高级教程(五)

23、CSS 媒体查询 - 实例 /* 如果屏幕尺寸超过 600 像素&#xff0c;把 <div> 的字体大小设置为 80 像素 */ media screen and (min-width: 600px) {div.example {font-size: 80px;} }/* 如果屏幕大小为 600px 或更小&#xff0c;把 <div> 的字体大小设置为 30px …

器利而事善——datagrip 的安装以及简单使用

一&#xff0c;安装 下载&#xff1a;直接到官网下载即可&#xff0c; 破解&#xff1a;这是破解连接&#xff1a;https://pan.baidu.com/s/11BgOMp4Z9ddBrXwCVhwBng &#xff0c;提取码&#xff1a;abcd&#xff1b; 下载后&#xff0c;选择倒数第三个文件&#xff0c;打开da…

【ZZULI数据结构实验四】:C语言排序算法大比拼

&#x1f4c3;博客主页&#xff1a; 小镇敲码人 &#x1f49a;代码仓库&#xff0c;欢迎访问 &#x1f680; 欢迎关注&#xff1a;&#x1f44d;点赞 &#x1f442;&#x1f3fd;留言 &#x1f60d;收藏 &#x1f30f; 任尔江湖满血骨&#xff0c;我自踏雪寻梅香。 万千浮云遮碧…

洛谷 P10566 「Daily OI Round 4」Analysis 题解

先弄个 ASCII 码表&#xff1a; 分析 很明显&#xff0c;想要节省时间&#xff0c;就要把这些字符转换成和它们的 ASCII 值最接近的大写字母。 通过 ASCII 码表&#xff0c;很容易就可以发现&#xff1a; ASCII 值与数字最接近的大写字母是 A \texttt A A。ASCII 值与小写…

切片的MBTiles格式和XYZ格式

MBTiles 和XYZ是两种经常使用的切片格式&#xff0c;尤其是各类下载器下载在线地图时经常使用这种格式。 MBTiles 是一种用于存储地图切片&#xff08;tileset&#xff09;的文件格式&#xff0c;通常用于地图的存储和传输。该格式由 Mapbox 开发&#xff0c;旨在简化大规模栅格…