iOS 板


LINE

看板 iOS  RSS
https://i.imgur.com/nCseBwP.jpeg
【本文目录】 前言:档案互通是办公的必要条件 第一节:UTM 的共享资料夹为什麽不能用 第二节:搞懂 UTM 网路设定与技术原理(文章较长) 第三节:透过个人热点进行档案传输(适合新手) 第四节:连接埠转送的机制与技术原理(文章较长) 第五节:透过连接埠转送进行档案传输(适合进阶) 【前言:档案互通是办公的必要条件】 1969年的美国国防部一项名为阿帕网(ARPANET)的计画被正式投入执行, 可以被视为是网际网路的前身,其目的就是要让电脑之间能够互相交换研究资料, 1974年,TCP/IP协定被开发了出来,并定义了两台电脑之间要如何沟通并传输资料。 这章节将会教各位如何让虚拟机器与 iPad 的档案系统进行双向交换资料。 如果你看了许多坊间关於 UTM SE 的教学,无论是文章或影片, 通常会到本系列中的第二章就差不多结束了。 有些会说无法传输档案,另一些会说请做成光碟映像 ISO 档挂载。 (顺带一提,可以用 Free ISO Creator 将资料夹制作成 ISO 光碟映像档。) https://www.freeisocreator.com/ 但是一台机器如果只能从外界读取资料而无法把成果携出的话, 在上面撰写的文档其实是没有太大的意义。 也因此,作为本系列中最精彩也最硬核的一篇, 我们将从为什麽正常情况下 UTM 无法实现档案共享, 到提出各式各样(但失败)的尝试可能, 以及翻阅 QEMU (UTM 的底层) 关於网路设定的官方文档, 从计算机网路概论的角度实现双向区域网路档案传输。 如果你也准备好了,就一起往下看吧。 【第一节:UTM 的共享资料夹为什麽不能用】 如果你有稍微把玩一下 UTM 介面的话, 会发现在挂载选单里面有一个共享资料夹的选项, 可以让你指定要把哪个 iPad 资料夹跟虚拟机器共享, 於是你很高兴了选了档案 App 中的某一个资料夹, 然後打开电脑後发现没办法使用,即使已经安装 Windows 客体系统工具也是一样。 https://docs.getutm.app/settings-qemu/sharing/ SPICE WebDAV This requires the SPICE guest tools to be installed on the guest. The shared directory is exposed as a WebDAV mount on the guest’s localhost (typically on port 9843). This option has better support for Windows but can have worse performance than VirtFS on Linux. 所以到底出了甚麽事情? 去 UTM Github Issue 列表中一找,会发现有大量的人都遇到问题: Shared folder not working with WinXP guest https://github.com/utmapp/UTM/discussions/3625 原因似乎是 Spice 工具用来负责共享资料夹的 WebDAV 服务在 Windows XP 上有点问题, 导致没有反应,服务没有启动或者是当掉, 有人甚至建议修改文档说明 Windows XP 其实不支援客体工具, 但因为 Spice 工具已经早就放弃 Windows XP 的支援了,故这个问题估计无法修复。 有些人第一时间就想到说,那我们就让电脑透过云端硬碟共享就好了啊。 但是考虑到 UTM SE 速度实在是太慢,开个浏览器就会等到天荒地老, 且如果用旧版的浏览器根本开不了网页,更不用提可能还要考虑资安的问题, 都这麽慢了还装套防毒软体那简直是慢上加慢。 那如果我们挂载一颗空的硬碟,然後把 Windows XP 上面的档案装进去之後, 再开一台 Linux 机器联网上传出去可不可行,答案也是否定的, 经过实测,UTM 似乎只能挂接一颗磁碟机, 挂两颗并设定读写的时候拿不到 write lock 开不了机, 且无法单独建立磁碟机(档案格式 qcow2),所以这条路也没办法。 因此,我们需要其他方法来实现档案传输,而且最好是内网也能用。 【第二节:搞懂 UTM 网路设定与技术原理】 在上面那个 Issue 讨论里面,有人其实提到直接利用 Windows SMB 协定, 在客体虚拟机器(Guest)上面开一个伺服器,再透过主体实体机器(Host)连上即可。 https://i.imgur.com/tGlEuQQ.png
恰好 iOS 13 之後内建档案 App 就支援 SMB 岂不是太完美了? 但当你照着步骤做就会发现: 1. 没办法把虚拟机器 IP 改成 Shared Network 模式 (192.168.xxx.xxx) https://i.imgur.com/EctSVCz.png
2. 档案 App 不确定是连不上机器还是连不上 SMB 要想讲清楚原因,就得先提到 UTM 关於网路设定的部分: https://docs.getutm.app/settings-qemu/devices/network/network/ UTM 网路模式主要分成四种: Emulated VLANShared Network、Host Only、Bridged,其中前两个跟我们比较有关: Emulated VLAN: Creates a new VLAN and connects this virtual machine to it. This VLAN is created in userspace and requests from the VM will be seen by the host operating system as originating from the UTM process. Different VMs will each have their own VLAN. (macOS) Shared Network: Traffic is routed directly by the host operating system and the guest shares a VLAN with the host. Services running on the guest and the host can see each other without additional configuration. This is recommended for new virtual machines. 简单来说,Emulated VLAN 模式下每个 UTM 虚拟机器会有独立 VLAN, 而 Shared Network 则是把实体主机与客体虚拟机连到相同的 VLAN, 每个 VLAN 就可以视为是一个区域网路。 虚拟区域网路(VLAN)通常是由一个实体 LAN 进行分割, 主要的目的就是为了把不同群组的电脑进行功能划分以方便管理。 而虚拟区域网路本身具有防火墙的效果, 也就是说不同虚拟网路间的电脑彼此之间不可以直接通讯。 虚拟区域网路(Virtual LANs) https://www.cs.nthu.edu.tw/~nfhuang/chap16.htm https://savicontrols.com/what-is-vlan-i-quick-bytes-with-paul-zielie/ https://i.imgur.com/aY6Hozo.png
以上图来说,蓝色网路 VLAN 1绿色网路 VLAN 2 各是一个 VLAN, 透过路由器设定我们可以将 Host 1-3 互相直接通讯与 Host 4-6 互相直接通讯, 而 VLAN 1VLAN 2 之间无法直接通讯,必须要透过路由器。 回到我们的 UTM 网路设定, 也就是说 iPad 所处的 VLAN 与 虚拟机所处的 VLAN 不相同, 除非透过一个个人热点(如手机开热点)当作一个路由器,否则是无法直接通讯的。 在 QEMU 的网路文档中提到: https://people.redhat.com/pbonzini/qemu-test-doc/_build/html/topics/pcsys_005fnetwork.html Using the user mode network stack By using the option -net user (default configuration if no -net option is specified), QEMU uses a completely user mode network stack (you don’t need root privilege to use the virtual network). The virtual network configuration is the following: QEMU VLAN <------> Firewall/DHCP server <-----> Internet | (10.0.2.2) | ----> DNS server (10.0.2.3) | ----> SMB server (10.0.2.4) The QEMU VM behaves as if it was behind a firewall which blocks all incoming connections. You can use a DHCP client to automatically configure the network in the QEMU VM. The DHCP server assign addresses to the hosts starting from 10.0.2.15. 也就是说除非我们把 UTM 网路能够设定成共享模式, 否则基本上是无法区域网路内让 iPad 与虚拟机器通讯的, 但是在文档中也写到共享模式仅限 MacOS,也就是 iOS 只能使用模拟 VLAN。 【第三节:透过个人热点进行档案传输】 前面提到,虽然 VLAN 之间是无法通讯的, 但是我们只要有一个路由器就能让 iPad 与虚拟机器进行通讯, 其实就是让手机开一个热点(建议停用行动网路避免资安问题), 这个时候 iPad 上 App 启动的伺服器都会变成 192.168.xxx.xxx, 我们就能在虚拟机器里面连上这个伺服器进行档案交换了。 以下介绍几个可行的方案: (1) 用 iPad App 开 WebDAV 伺服器: 类似软体如:Documents:PDF 阅读器软体,音乐播放器, VPN https://i.imgur.com/jfPVJCL.png
优点:很容易找到 App 支援 WebDAV 伺服器 缺点:常常会连不上,不是很稳定 https://i.imgur.com/GMPyOoT.png
https://i.imgur.com/FqMrzpy.png
(2) 用 iPad App 开 FTP 伺服器: 类似软体如:GoFTP Server https://i.imgur.com/gbEkxbI.png
优点:稳定度高 缺点:内建档案管理 FTP 浏览器很慢,建议安装 FileZilla,且 App 数量较少 https://i.imgur.com/PipM8Bn.png
https://i.imgur.com/XFu2qG1.png
(3) 用 iPad App 开一个网页上传伺服器: 类似软体如:Documents:PDF 阅读器软体,音乐播放器, VPN https://i.imgur.com/jfPVJCL.png
优点:容易使用,浏览器输入 IP 地址即可 缺点:XP 浏览器通常无法正常开启 App 产生的档案上传网页 【第四节:连接埠转送的机制与技术原理】 UTM 还有提供一项机制,叫做连接埠转送(Port Forwarding)。 https://docs.getutm.app/settings-qemu/devices/network/port-forwarding/ Port forwarding is only available on QEMU backend virtual machines using Emulated VLAN network mode. To create a new port forward, press the “New…” button and fill in the fields. To modify an existing port forward, either double click on the entry in the table or select an entry and click “Edit… ”. On macOS 11, click on an entry to modify it. 这个连接埠转送功能简单来说, 就是把虚拟机器上的某一个连接埠(Port)接上实体机器上的某一个连接埠(Port)。 而每一个连接埠,其实就是用来给特定软体通讯用的通道, 并且透过转送可以改变指定的连接埠。 https://en.wikipedia.org/wiki/Port_forwarding https://i.imgur.com/oMFCWVz.png
比如说:我们设定虚拟机器 A 连接埠转送, 那在 iPad 上就能透过这个 A 连接埠进行通讯。 也就是说,只要把档案传输会用到的连接埠加到 UTM 网路设定, 就能在 iPad 上面跟虚拟机进行档案传输。 https://i.imgur.com/r4PZocI.png
【第五节:透过连接埠转送进行档案传输】 以下介绍几个可行的方案(记得去防火墙设定例外): (1) 虚拟机开启 SMB 协定:设定转送连接埠 445,iPad 端连上 127.0.0.1:445 优点:Windows 内建档案传输,不用安装其他软体 缺点:在 AppStore 要找到 SMBv1 的 App 有点困难,内建档案 App 不支援旧版 SMB, 多数档案 App 拒绝连接到 127.0.0.1 并需要联网 类似软体如:NPlayer (只能读取档案) https://i.imgur.com/hH8z88W.png
Owlfiles - File Manager https://i.imgur.com/hnRchCv.png
https://i.imgur.com/FrcW66r.png
https://i.imgur.com/Oe7B0VL.png
https://i.imgur.com/x6Kmdne.png
https://i.imgur.com/N2jEqx3.png
https://i.imgur.com/j59D1pb.png
(2) 虚拟机开启 FTP 伺服器:设定转送连接埠 21 用於监听(Listening), 另外设定几个连接埠来作为档案传输连接埠, 并於 FTP 伺服器内设定被动模式(Passive Mode) 为这几个档案传输连接埠, iPad 端连上 127.0.0.1:21 优点:iPad 要找到 FTP 客户端 App 较容易,伺服器控制台讯息可协助找问题 Debug 缺点:随时 FTP 伺服器开启有资安疑虑,需安装额外 FTP 软体 类似软体如:FTPManager - FTP, SFTP client https://i.imgur.com/dou4imJ.png
https://i.imgur.com/KGXDDwi.png
https://i.imgur.com/jOkLhcj.png
--
1F:推 Lyeuiechang: [新闻]有狼师一直戳女学森(.)(.)而被家长吉上法院...12/04 23:42
2F:→ Xhocer: ) (12/04 23:44
3F:推 xj654m3: ( Y )12/04 23:46
4F:→ Xhocer: \|/12/04 23:48
5F:推 xj654m3: (╮⊙▽⊙)ノ|||12/05 00:47
6F:推 Lyeuiechang: /|\╰╮o( ̄▽ ̄///)<12/05 01:17
--
QR Code



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.200.70.103 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/iOS/M.1721838149.A.387.html ※ 编辑: Lyeuiechang (1.200.70.103 台湾), 07/25/2024 00:43:10
7F:→ Matil2258037: 跟我想的一样 07/25 00:43
※ 编辑: Lyeuiechang (1.200.70.103 台湾), 07/25/2024 00:48:03 ※ 编辑: Lyeuiechang (1.200.70.103 台湾), 07/25/2024 00:54:16
8F:推 gary8442: 先推 07/25 02:25
9F:推 YU0201: 请大大收下我的膝盖 07/25 07:00
10F:→ MOONY135: 愿意浪费生命研究这个 值得尊敬 07/25 09:43
11F:推 yohobiology: 太强了 07/25 10:09
12F:推 Melmetal: 先推 07/25 11:52
13F:推 berserkman: 苹果为了把ipad和mac分开真的不遗余力 07/25 11:54
14F:推 Luciferspear: 推 07/25 12:23
15F:推 desanz: 你真的超强 07/25 14:56
16F:推 ianferrari: 太厉害了 推 07/25 16:45
17F:推 cc5566cc: 跟我想的差不多 英雄所见略同 给推 07/25 20:49
18F:推 guanting886: 在iPadOS模拟20年前的XP看起来蛮折腾自己的 07/25 21:29
19F:推 COLINLIU: 推 07/25 21:52
20F:推 ho83leo: 有料喔! 07/26 00:05
21F:推 JoseMiguel: FTP方式最稳,怕资安可以参考SFTP的连线方式port会在2 07/26 14:50
22F:→ JoseMiguel: 2 07/26 14:50
23F:推 wtsph: iOS12以前的版本有解方吗 07/26 15:05
24F:推 echelon1279: 强者推 07/27 23:03
25F:推 xzero0911: UTM SE居然有人研究使用给推 垃圾苹果死不开放UTM HV 07/28 16:00
26F:推 stu85010: 求第六节分享方式总结⊙o⊙ 07/31 09:43
27F:推 waakye: 现在能玩比较好的方式是收一台16.3之前的M1 M2 07/31 11:38







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP