<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>FnOS on KnightLi Blog</title>
        <link>https://knightli.com/en/tags/fnos/</link>
        <description>Recent content in FnOS on KnightLi Blog</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Mon, 04 May 2026 06:09:40 +0800</lastBuildDate><atom:link href="https://knightli.com/en/tags/fnos/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>Installing fnOS on TerraMaster F2-220: F3 Backplane, NVMe, and BIOS Module Injection</title>
        <link>https://knightli.com/en/2026/05/04/terramaster-f2-220-fnos-nvme-bios/</link>
        <pubDate>Mon, 04 May 2026 06:09:40 +0800</pubDate>
        
        <guid>https://knightli.com/en/2026/05/04/terramaster-f2-220-fnos-nvme-bios/</guid>
        <description>&lt;p&gt;This is a practical note on installing fnOS on a TerraMaster F2-220. The goal is to replace the original TOS and keep using the NAS after official support for the F2-220 has ended. The process also verifies that the F3 backplane can work on the F2-220, and solves the issue where the BIOS cannot boot from NVMe.&lt;/p&gt;
&lt;p&gt;The original F3 backplane project was verified on the F2-221 with a J3355 platform. The F2-220 uses the J1800 platform, so compatibility was not guaranteed. A V1.1 version existed in a project fork with fewer components, lower cost, and less assembly difficulty, so that version was used for testing.&lt;/p&gt;
&lt;h2 id=&#34;pcb-fabrication-and-soldering&#34;&gt;PCB Fabrication and Soldering
&lt;/h2&gt;&lt;p&gt;Backplane project: &lt;a class=&#34;link&#34; href=&#34;https://github.com/arnarg/f3_backplane&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;arnarg/f3_backplane&lt;/a&gt;. The board used here is the V1.1 version from a fork. Its core goal is to keep the original SATA drive bays while exposing an NVMe SSD position from the backplane connector.&lt;/p&gt;
&lt;p&gt;Multiple PCBs were received after fabrication. One detail appeared during soldering: after soldering the M.2 connector, it became clear that the SATA connector was different from common SATA connectors.&lt;/p&gt;
&lt;p&gt;A fully matching native SATA connector was not found on Taobao, so an existing connector was modified instead: the pins were pulled out, positions were swapped, and then the connector was soldered back to the board.&lt;/p&gt;
&lt;p&gt;The key takeaway is that the F3 backplane approach can be tried on the F2-220, but SATA connector selection needs special attention. Do not order only by looking for a generic SATA connector.&lt;/p&gt;
&lt;h2 id=&#34;vga-output&#34;&gt;VGA Output
&lt;/h2&gt;&lt;p&gt;The F2-220 has no exposed video output, but it has an internal 12-pin VGA header. You need an internal motherboard 12Pin VGA adapter cable. One end connects to the 12-pin header inside the machine, and the other end is usually a standard DB15 VGA female connector for an external monitor.&lt;/p&gt;
&lt;p&gt;Useful search keywords include &amp;ldquo;12Pin VGA adapter cable&amp;rdquo;, &amp;ldquo;motherboard 12-pin VGA adapter cable&amp;rdquo;, and &amp;ldquo;2.0mm 12Pin to VGA&amp;rdquo;. Before buying, compare the connector direction, pitch, and pinout against a photo of the internal header. Do not order based only on the &amp;ldquo;12Pin&amp;rdquo; label.&lt;/p&gt;
&lt;p&gt;This step is important for installation. Without video output, BIOS and installer troubleshooting becomes much harder.&lt;/p&gt;
&lt;h2 id=&#34;installing-fnos&#34;&gt;Installing fnOS
&lt;/h2&gt;&lt;p&gt;Boot the fnOS installer through Ventoy. The installer can see the NVMe SSD, which means the backplane and NVMe hardware path are working.&lt;/p&gt;
&lt;p&gt;However, after installation, removing the boot drive causes the machine to reboot into the BIOS screen instead of entering fnOS. The BIOS boot list does not contain the NVMe SSD. If fnOS is installed to a USB drive and booted from there, the system can still see the NVMe drive normally.&lt;/p&gt;
&lt;p&gt;This indicates:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;NVMe hardware detection is fine.&lt;/li&gt;
&lt;li&gt;Linux can access the NVMe drive.&lt;/li&gt;
&lt;li&gt;The failure point is the BIOS boot stage.&lt;/li&gt;
&lt;li&gt;The F2-220 platform is old, and the stock BIOS likely lacks an NVMe boot module.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;backing-up-the-bios&#34;&gt;Backing Up the BIOS
&lt;/h2&gt;&lt;p&gt;At this point, fnOS can already boot from a USB drive. Since fnOS is Debian-based, &lt;code&gt;flashrom&lt;/code&gt; can be used inside the system to back up and flash the BIOS.&lt;/p&gt;
&lt;p&gt;Flashing BIOS is risky. Prepare a programmer if possible, so recovery is still possible after a failed flash.&lt;/p&gt;
&lt;p&gt;Install &lt;code&gt;flashrom&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt update
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install flashrom -y
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Check whether the BIOS chip can be detected:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo flashrom -p internal
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Detected chip information may look like this:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Found Winbond flash chip &amp;#34;W25Q64.W&amp;#34; (8192 kB, SPI) mapped at physical address 0x00000000ff800000.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Back up the original BIOS. Replace the chip model in the command with the actual result from your machine:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo flashrom -p internal -c &lt;span class=&#34;s2&#34;&gt;&amp;#34;W25Q64.W&amp;#34;&lt;/span&gt; -r backup_factory.bin
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;injecting-the-nvme-module&#34;&gt;Injecting the NVMe Module
&lt;/h2&gt;&lt;p&gt;The backed-up BIOS is a &lt;code&gt;.bin&lt;/code&gt; file. You can transfer it to a PC with WinSCP, then refer to the Bilibili tutorial &lt;a class=&#34;link&#34; href=&#34;https://www.bilibili.com/read/cv4475152/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;让老主板用上 Nvme 协议的固态&lt;/a&gt; to inject the NVMe module into the BIOS file.&lt;/p&gt;
&lt;p&gt;After processing, transfer the modified BIOS file back to fnOS.&lt;/p&gt;
&lt;p&gt;Do not blindly reuse someone else&amp;rsquo;s BIOS file. Different machines, BIOS versions, and flash chips may differ. The safer approach is to back up your own original BIOS and modify that backup.&lt;/p&gt;
&lt;h2 id=&#34;flashing-the-new-bios&#34;&gt;Flashing the New BIOS
&lt;/h2&gt;&lt;p&gt;The flash command is shown below. Replace the chip model, firmware path, and file name according to your actual setup:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo flashrom -p internal -c &lt;span class=&#34;s2&#34;&gt;&amp;#34;W25Q64.W&amp;#34;&lt;/span&gt; -w /vol1/NEW_NVME.bin
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;When the output shows this line, verification has passed:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Verifying flash... VERIFIED.
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;After flashing, the BIOS boot list may show a &lt;code&gt;PATA&lt;/code&gt; entry. On older BIOS setups with an injected NVMe module, the NVMe boot entry often appears as &lt;code&gt;PATA&lt;/code&gt;. Seeing it means the BIOS can now recognize the NVMe boot path.&lt;/p&gt;
&lt;h2 id=&#34;result&#34;&gt;Result
&lt;/h2&gt;&lt;p&gt;Final result:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;F3 Backplane V1.1 can detect NVMe on the TerraMaster F2-220.&lt;/li&gt;
&lt;li&gt;The fnOS installer can see the NVMe SSD.&lt;/li&gt;
&lt;li&gt;The stock BIOS cannot boot directly from NVMe.&lt;/li&gt;
&lt;li&gt;After injecting the NVMe module into the BIOS, a &lt;code&gt;PATA&lt;/code&gt; boot entry appears.&lt;/li&gt;
&lt;li&gt;The machine can boot fnOS from NVMe after the BIOS modification.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Testing feedback also notes that this NVMe channel is only a little over 300MB/s. That is enough for a system drive. There is no need to use a high-end SSD; even a small Optane drive can be sufficient.&lt;/p&gt;
&lt;h2 id=&#34;notes&#34;&gt;Notes
&lt;/h2&gt;&lt;p&gt;This is not a risk-free general tutorial. It is closer to a hardware and BIOS modification record. Before trying it, note the following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;F2-220 and F2-221 use different platforms, so F2-221 results should not be treated as identical to F2-220 results.&lt;/li&gt;
&lt;li&gt;The F3 backplane requires PCB fabrication and soldering. The SATA connector may also require pin modification.&lt;/li&gt;
&lt;li&gt;A suitable internal VGA adapter cable is needed for installation and troubleshooting.&lt;/li&gt;
&lt;li&gt;BIOS flashing can brick the machine. Prepare a programmer and keep the original backup.&lt;/li&gt;
&lt;li&gt;The chip model in the &lt;code&gt;flashrom&lt;/code&gt; command must match the chip detected on your own machine.&lt;/li&gt;
&lt;li&gt;Do not directly flash someone else&amp;rsquo;s modified BIOS. Inject the NVMe module into your own backup first.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The value of this note is that it adds real F2-220 test results: the F3 backplane idea is not limited to the F2-221, and the F2-220 can also use an NVMe system drive. The real blocker is not Linux detecting NVMe, but whether the BIOS supports NVMe booting.&lt;/p&gt;
&lt;h2 id=&#34;related-links&#34;&gt;Related Links
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;fnNAS forum test thread: &lt;a class=&#34;link&#34; href=&#34;https://club.fnnas.com/forum.php?mod=viewthread&amp;amp;tid=55589&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;铁威马F2-220折腾飞牛OS过程&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        <item>
        <title>What Models Power fnOS AI Photos: Face, Object, and Semantic Search Stack</title>
        <link>https://knightli.com/en/2026/04/11/fnos-ai-photo-model-stack/</link>
        <pubDate>Sat, 11 Apr 2026 08:27:57 +0800</pubDate>
        
        <guid>https://knightli.com/en/2026/04/11/fnos-ai-photo-model-stack/</guid>
        <description>&lt;p&gt;The AI photo feature in Feiniu NAS (fnOS) is typically built by integrating mainstream open-source models, rather than training all core algorithms from scratch.&lt;/p&gt;
&lt;h2 id=&#34;1-face-recognition-insightface&#34;&gt;1) Face recognition: InsightFace
&lt;/h2&gt;&lt;p&gt;For face-related functions, InsightFace is usually the core.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Common feature-learning method: ArcFace&lt;/li&gt;
&lt;li&gt;Main role: face detection, embedding extraction, clustering, and person recognition&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;2-object-and-scene-understanding-yolo-family&#34;&gt;2) Object and scene understanding: YOLO family
&lt;/h2&gt;&lt;p&gt;Object detection in photos (for example cats, dogs, cars, computers) and part of scene-level understanding are generally handled by YOLO models (often YOLOv8 or lightweight variants).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Strength: good speed/accuracy balance&lt;/li&gt;
&lt;li&gt;Fit: edge-like NAS environments with limited compute budgets&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;3-semantic-search-clip--chinese-clip&#34;&gt;3) Semantic search: CLIP / Chinese-CLIP
&lt;/h2&gt;&lt;p&gt;A key capability is natural-language photo search, such as &amp;ldquo;a dog on the grass&amp;rdquo; or &amp;ldquo;a man wearing sunglasses.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;Typical implementation uses CLIP:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;images and text are projected into the same embedding space&lt;/li&gt;
&lt;li&gt;Chinese deployments usually add Chinese-CLIP or similar localized variants&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;summary&#34;&gt;Summary
&lt;/h2&gt;&lt;p&gt;A simple way to view the fnOS AI photo stack:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;InsightFace for faces&lt;/li&gt;
&lt;li&gt;YOLO for objects and scenes&lt;/li&gt;
&lt;li&gt;CLIP for text-image semantic alignment&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The main engineering value is in integration quality, localization, and hardware acceleration, more than from-zero model invention.&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Two Ways to Remotely Access Feiniu NAS and Their Comparison</title>
        <link>https://knightli.com/en/2026/04/04/fnos-remote-access-public-ip-vs-fn-connect/</link>
        <pubDate>Sat, 04 Apr 2026 11:00:00 +0800</pubDate>
        
        <guid>https://knightli.com/en/2026/04/04/fnos-remote-access-public-ip-vs-fn-connect/</guid>
        <description>&lt;p&gt;There are two common ways to remotely access a Feiniu NAS:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Direct public IP access&lt;/li&gt;
&lt;li&gt;FN Connect remote access service&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Below is a practical guide organized by &amp;ldquo;how to use + key notes + best-fit scenarios.&amp;rdquo;&lt;/p&gt;
&lt;h2 id=&#34;option-1-direct-public-ip-access&#34;&gt;Option 1: Direct Public IP Access
&lt;/h2&gt;&lt;p&gt;This is suitable when your home network has a public IP and you can configure port forwarding on the router.&lt;br&gt;
After that, you can access it by entering the public IPv4/IPv6 address and port in a browser or in the Feiniu App.&lt;br&gt;
You can also set up DDNS and access via domain name.&lt;/p&gt;
&lt;h3 id=&#34;notes&#34;&gt;Notes
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;Default ports for Feiniu private cloud fnOS:
&lt;code&gt;HTTP = 8000&lt;/code&gt;, &lt;code&gt;HTTPS = 8001&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;If port forwarding is configured, the access URL must include the port number; otherwise, access will fail.&lt;/li&gt;
&lt;li&gt;Direct public IP access usually has no extra relay, so speed loss is lower.&lt;/li&gt;
&lt;li&gt;If security certificates are not configured properly, HTTP is plaintext. Use only in trusted network environments.&lt;/li&gt;
&lt;li&gt;Many broadband providers block common ports such as 80 and 8080. If common ports do not work, try less common ports.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;option-2-fn-connect-remote-access-service&#34;&gt;Option 2: FN Connect Remote Access Service
&lt;/h2&gt;&lt;p&gt;FN Connect is a remote-access service provided by Feiniu.&lt;br&gt;
After enabling it, you get a unique FN ID to identify your Feiniu NAS and access it remotely through the corresponding method.&lt;/p&gt;
&lt;h3 id=&#34;notes-1&#34;&gt;Notes
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;FN Connect requires you to register or sign in with a Feiniu account.&lt;/li&gt;
&lt;li&gt;FN Connect provides an SSL certificate for the subdomain mapped to your FN ID, enabling secure HTTPS access.&lt;/li&gt;
&lt;li&gt;FN Connect automatically chooses a better connection method based on your current network environment.&lt;/li&gt;
&lt;li&gt;When direct public access is available, the web client can choose whether to use direct public IP access.&lt;/li&gt;
&lt;li&gt;FN Connect relay forwarding has traffic cost, so rate limiting applies.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;comparison-of-the-two-methods&#34;&gt;Comparison of the Two Methods
&lt;/h2&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Dimension&lt;/th&gt;
          &lt;th&gt;Direct Public IP Access&lt;/th&gt;
          &lt;th&gt;FN Connect&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Getting started&lt;/td&gt;
          &lt;td&gt;Requires public IP + router port forwarding&lt;/td&gt;
          &lt;td&gt;Lower barrier with account login and guided setup&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Access speed&lt;/td&gt;
          &lt;td&gt;Usually faster with a more direct path&lt;/td&gt;
          &lt;td&gt;Close to direct mode when direct; possibly limited when relayed&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Security&lt;/td&gt;
          &lt;td&gt;Depends on your own certificate and exposure strategy&lt;/td&gt;
          &lt;td&gt;Certificate support by default, easier HTTPS setup, depends on Feiniu&amp;rsquo;s own security&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Maintenance cost&lt;/td&gt;
          &lt;td&gt;You maintain network and security settings yourself&lt;/td&gt;
          &lt;td&gt;Lower day-to-day maintenance effort&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Best for&lt;/td&gt;
          &lt;td&gt;Users with networking experience and performance focus&lt;/td&gt;
          &lt;td&gt;Users who prioritize ease of use and stability&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;recommendations&#34;&gt;Recommendations
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;If you are comfortable with networking and want higher bandwidth/lower latency, prioritize direct public IP access.&lt;/li&gt;
&lt;li&gt;If you care more about ease of use and secure access experience, prioritize FN Connect.&lt;/li&gt;
&lt;li&gt;In practice, you can mix both: use FN Connect by default, and switch to direct public IP when conditions allow.&lt;/li&gt;
&lt;/ol&gt;
</description>
        </item>
        
    </channel>
</rss>
