<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>IPv6 — LowEndSpirit</title>
        <link>https://staging.lowendspirit.com/index.php?p=/</link>
        <pubDate>Mon, 06 Apr 2026 10:23:54 +0000</pubDate>
        <language>en</language>
            <description>IPv6 — LowEndSpirit</description>
    <atom:link href="https://staging.lowendspirit.com/index.php?p=/discussions/tagged/ipv6/feed.rss" rel="self" type="application/rss+xml"/>
    <item>
        <title>Clearance - 10% OFF - Ryzen 9 KVM - Unmetered Bandwidth - UK &amp; DE - Comment VM ID for 2x NVMe</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/5733/clearance-10-off-ryzen-9-kvm-unmetered-bandwidth-uk-de-comment-vm-id-for-2x-nvme</link>
        <pubDate>Wed, 05 Apr 2023 16:43:40 +0000</pubDate>
        <category>Offers</category>
        <dc:creator>Hostaris</dc:creator>
        <guid isPermaLink="false">5733@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Hello LES,</p>

<p>For a limited time only, we are offering 10% off on every plan currently available!</p>

<p><img src="https://i.imgur.com/cz5by2g.png" alt="" title="" /></p>

<p>Ryzen 9 5900X / Ryzen 9 5950X</p>

<p>DE Looking glass: <a href="https://lg.de-1-fra.sys.hostaris.com" rel="nofollow">https://lg.de-1-fra.sys.hostaris.com</a><br />
DE test IP: 45.158.9.1<br />
UK Looking glass: <a href="https://lg.uk-1-ke.sys.hostaris.com" rel="nofollow">https://lg.uk-1-ke.sys.hostaris.com</a><br />
UK test IP: 185.179.216.1</p>

<p>DE includes a /64 IPv6</p>

<p>ASN: AS199765 (<a href="https://bgp.tools/as/199765" rel="nofollow">https://bgp.tools/as/199765</a>)</p>

<p>Order: <a href="https://deploy.hostaris.com?les" rel="nofollow">https://deploy.hostaris.com?les</a></p>

<p>As stated in the title: Send the ID of your VPS for double NVMe SSD storage!</p>

<p>Need a custom plan? Simply contact us through live chat and we can assist you <img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/smile.png" title=":)" alt=":)" height="18" /></p>
]]>
        </description>
    </item>
    <item>
        <title>first time attempt ipv6 from router to pfsense</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/5659/first-time-attempt-ipv6-from-router-to-pfsense</link>
        <pubDate>Fri, 24 Mar 2023 00:16:49 +0000</pubDate>
        <category>Technical</category>
        <dc:creator>xyphos10</dc:creator>
        <guid isPermaLink="false">5659@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Hello everyone,</p>

<p>Just wanted to get some input with my attempt and configuring native ISP ipv6 on my network. So for an overview of how things are setup, my ISP gives me a Cable Modem which has a static ipv4 and /64 ipv6 which feeds a pfsense and from there everything else. They do not allow me to put the modem in bridged mode.</p>

<p>lets use fd00:0824:2273:a::/64 as stand in for the public ipv6.</p>

<p>If I assign fd00:0824:2273:a::1 to the modem and fd00:0824:2273:a::2 to pfsense on WAN side. How can I go about make all clients on pfsense LAN side have an ipv6.</p>

<p>I have attempted using ULA on LAN side and then using NPt but it does not work. As soon as traffic gets to pfsense it stop. (Yes I have all appropriate pfsense rules and have verified in the logs that it is not simply being blocked)</p>

<p>I have attempted breaking down the /64 into 2 /65 and use 1 for wan and 1 for lan but no luck.</p>

<p>Is there a simpler way of doing this that I am just overlooking? I appreciate any help.</p>
]]>
        </description>
    </item>
    <item>
        <title>EasyVM - News &amp; Specials | Dallas, NYC, Tampa, Las Vegas, Singapore</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/5651/easyvm-news-specials-dallas-nyc-tampa-las-vegas-singapore</link>
        <pubDate>Tue, 21 Mar 2023 20:26:06 +0000</pubDate>
        <category>Offers</category>
        <dc:creator>aqua</dc:creator>
        <guid isPermaLink="false">5651@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Hello Everyone,</p>

<p>We recently upgraded our space in Las Vegas, opened doors for Singapore, deployed newer and faster nodes in NYC, and upgraded our network capacity in Dallas. We are working hard to replenish all the out-of-stock locations and will inquire with updates throughout this thread.</p>

<p>These specials are while supplies last (probably won't restock some items for a bit), or until April 7th.</p>

<hr />

<hr />

<h1>Global E5 SSD VPS</h1>

<p>SAVE 40% OFF using coupon code "BVYI7TQS66"</p>

<p><a href="https://easyvm.net/vps" rel="nofollow">https://easyvm.net/vps</a></p>

<p>Bronze<br />
1 Core<br />
2GB RAM<br />
30GB SSD<br />
2TB Bandwidth<br />
$5/mo <strong>$3/mo</strong></p>

<p>Silver<br />
2 Cores<br />
4GB RAM<br />
50GB SSD<br />
4TB Bandwidth<br />
$9/mo <strong>$5.4/mo</strong></p>

<p>Higher Plans are available with this discount -- <a href="https://easyvm.net/vps" rel="nofollow">https://easyvm.net/vps</a></p>

<p><strong>Provisioning Time:</strong></p>

<p>Dallas, TX (Instant)<br />
Las Vegas, NV (1-2 Weeks -- awaiting IP announcement), <br />
Tampa, FL (1 week -- awaiting IP announcement), <br />
NYC, NY (1-2 weeks -- Awaiting drives for new servers).</p>

<p>If space frees up, we will instantly provision those pending from oldest to newest.</p>

<hr />

<hr />

<h1>Dallas Ryzen NVMe VPS</h1>

<p>SAVE 60% OFF using coupon code "D0DQJ1MR28"</p>

<p><a href="https://easyvm.net/ryzen-vps" rel="nofollow">https://easyvm.net/ryzen-vps</a></p>

<p>Bronze<br />
1 Core (Fair Share)<br />
2GB RAM<br />
50GB NVMe SSD<br />
2TB @ 1 Gbit/s<br />
$8/mo <strong>$3.2/mo</strong></p>

<p>Silver<br />
1 Core (Dedicated)<br />
4GB RAM<br />
100GB NVMe SSD<br />
4TB Bandwidth<br />
$15/mo <strong>$6/mo</strong></p>

<p>Higher Plans are available with this discount -- <a href="https://easyvm.net/ryzen-vps" rel="nofollow">https://easyvm.net/ryzen-vps</a></p>

<p><strong>Provisioning Time:</strong> Instant</p>

<hr />

<hr />

<h1>Singapore Ryzen NVMe VPS -- NEW!</h1>

<p>SAVE 40% OFF using coupon code "BVYI7TQS66"</p>

<p><a href="https://portal.easyvm.net/store/sg-ryzen" rel="nofollow">https://portal.easyvm.net/store/sg-ryzen</a> (will get it pushed to main site in a bit)</p>

<p>Bronze<br />
1 Core (Fair Share)<br />
2GB RAM<br />
25GB NVMe SSD<br />
1TB Bandwidth<br />
$8/mo <strong>$4.8/mo</strong></p>

<p>Higher Plans are available with this discount -- <a href="https://portal.easyvm.net/store/sg-ryzen" rel="nofollow">https://portal.easyvm.net/store/sg-ryzen</a></p>

<p><strong>Provisioning Time:</strong> Instant</p>

<hr />

<hr />

<h1>Dallas Dedicated Servers</h1>

<p>SAVE 20% OFF using coupon code "CEH6YQJ907"</p>

<p><a href="https://easyvm.net/dedicated" rel="nofollow">https://easyvm.net/dedicated</a></p>

<p>2x E5-2670<br />
128GB RAM<br />
2x 1TB SSD<br />
10TB @ 1 Gbit/s<br />
/31 IPv4 + /64 IPv6 (/29 IPv4 is also available for free)<br />
$68/mo</p>

<p>There is one more that doesn't fit in the price range in stock, it is still valid with this coupon. Please check <a href="https://easyvm.net/dedicated" rel="nofollow">https://easyvm.net/dedicated</a></p>

<p><strong>Provisioning Time:</strong> 1-3 Days</p>

<p>Comment your invoice number and we'll top up your account with $5 of balance <img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/smile.png" title=":)" alt=":)" height="18" /></p>
]]>
        </description>
    </item>
    <item>
        <title>The sorry state of IPv6 reverse DNS</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/5569/the-sorry-state-of-ipv6-reverse-dns</link>
        <pubDate>Fri, 03 Mar 2023 17:47:14 +0000</pubDate>
        <category>General</category>
        <dc:creator>cmeerw</dc:creator>
        <guid isPermaLink="false">5569@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Just noticed that reverse DNS for IPv6 addresses doesn't work over IPv6-only for any of my VPSes.</p>

<p>For alphaVPS and KTS24 the DNS servers responsible for the reverse zone don't have any IPv6 address and for InceptionHosting the DNS server do have IPv6 addresses, but are not reachable via IPv6.</p>

<p>Are others any better?</p>
]]>
        </description>
    </item>
    <item>
        <title>EasyVM - Ryzen 3900x Pre-Order! Deal Megathread! Refugee Progam! New Locations!</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/5453/easyvm-ryzen-3900x-pre-order-deal-megathread-refugee-progam-new-locations</link>
        <pubDate>Sun, 12 Feb 2023 21:35:56 +0000</pubDate>
        <category>Offers</category>
        <dc:creator>aqua</dc:creator>
        <guid isPermaLink="false">5453@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Howdy Friends,</p>

<p>Now we know Valentines Day is around the corner, and what is the best gift you can give to your S/O? An EasyVM server!</p>

<p>The transfer to the new name has been successful, and we're ready to take on the load from the recent disasters that have struck the LowEnd community.</p>

<p>With the recent questionable existences and drama around 2 major providers (that also had very popular Ryzen VPS Plans), we are offering a refugee discount.</p>

<p>Standard (E5 Based Hosting): First month free, then locked rate + 10% off (if lower) from previous provider.</p>

<p>Ryzen: 50% off the first month, then a locked rate + 10% off (if lower) from the previous provider.</p>

<p>To claim, please open a <a rel="nofollow" href="https://portal.easyvm.net/contact.php" title="ticket">ticket</a>. You will need to provide invoice/client panel proof of your service.</p>

<p>We can do any sort of custom plans desired and still honor the Refugee Program to those who are in need! Only limitation is bandwidth (can be done for small amounts), but no unmetered bandwidth <img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/grimace.png" title=":grimace:" alt=":grimace:" height="18" /></p>

<h3>GET 25% FOR LIFE WITH CODE LET25OFF FOR ANY BILLING PERIOD -- COUPON CODES ARE PRE-APPLIED TO ALL LINKS</h3>

<p>AND</p>

<h3>GET 50% FOR LIFE WITH CODE LE50OFF YEARLY BILLING</h3>

<hr />

<p><strong>Standard KVM VPS Offers:</strong></p>

<p>· Xeon E5 Based Servers<br />
· DDR4 ECC Memory<br />
· RAID-10 SATA SSD Storage<br />
· Tons of readily available space<br />
· Instant Deployment<br />
· Available in Dallas, TX, New York City, NY, <strong>Tampa, FL</strong> (New Location), and <strong>Las Vegas, NV</strong> (New Location)</p>

<p>Bronze<br />
1 Core<br />
1GB RAM<br />
25GB SSD Storage<br />
1TB @ 1 Gbit/s<br />
1 IP + /64 IPv6<br />
DDOS Protected<br />
<strong>Price:</strong> $2.99/mo $2.24/mo<br />
<a rel="nofollow" href="https://portal.easyvm.net/store/dallas-kvm/bronze?&amp;promocode=LET25OFF" title="Dallas">Dallas</a> - <a rel="nofollow" href="https://portal.easyvm.net/store/nyc-kvm/bronze?&amp;promocode=LET25OFF" title="New York City">New York City</a> - <a rel="nofollow" href="https://portal.easyvm.net/store/lv-kvm/bronze?&amp;promocode=LET25OFF" title="Las Vegas">Las Vegas</a> - <a rel="nofollow" href="https://portal.easyvm.net/store/tampa-kvm/bronze?&amp;promocode=LET25OFF" title="Tampa">Tampa</a></p>

<p>Silver<br />
2 Cores<br />
2GB RAM<br />
40GB SSD Storage<br />
2TB @ 1 Gbit/s<br />
1 IP + /64 IPv6<br />
DDOS Protected<br />
<strong>Price:</strong> $4.99/mo $3.74/mo<br />
<a rel="nofollow" href="https://portal.easyvm.net/store/dallas-kvm/silver?&amp;promocode=LET25OFF" title="Dallas">Dallas</a> - <a rel="nofollow" href="https://portal.easyvm.net/store/nyc-kvm/silver?&amp;promocode=LET25OFF" title="New York City">New York City</a> - <a rel="nofollow" href="https://portal.easyvm.net/store/lv-kvm/silver?&amp;promocode=LET25OFF" title="Las Vegas">Las Vegas</a> - <a rel="nofollow" href="https://portal.easyvm.net/store/tampa-kvm/silver?&amp;promocode=LET25OFF" title="Tampa">Tampa</a></p>

<p>Gold<br />
2 Cores<br />
4GB RAM<br />
80GB SSD Storage<br />
4TB @ 1 Gbit/s<br />
1 IP + /64 IPv6<br />
DDOS Protected<br />
<strong>Price:</strong> $8.99/mo $6.74/mo<br />
<a rel="nofollow" href="https://portal.easyvm.net/store/dallas-kvm/gold?&amp;promocode=LET25OFF" title="Dallas">Dallas</a> - <a rel="nofollow" href="https://portal.easyvm.net/store/nyc-kvm/gold?&amp;promocode=LET25OFF" title="New York City">New York City</a> - <a rel="nofollow" href="https://portal.easyvm.net/store/lv-kvm/gold?&amp;promocode=LET25OFF" title="Las Vegas">Las Vegas</a> - <a rel="nofollow" href="https://portal.easyvm.net/store/tampa-kvm/gold?&amp;promocode=LET25OFF" title="Tampa">Tampa</a></p>

<hr />

<p><strong>Ryzen VPS Offers (PRE-ORDER):</strong></p>

<p>· Ryzen 9 3900x Based Servers<br />
· DDR4 Memory<br />
· RAID-1 NVMe SSD<br />
· Path.net DDOS Protection<br />
· Available in Dallas, TX</p>

<p>RYZ-1GB<br />
1 Core (Fair Share)<br />
1GB RAM<br />
30GB NVMe Storage<br />
1TB @ 1 Gbit/s<br />
1 IP + /64 IPv6<br />
Included Path.net DDOS Protection<br />
<strong>Price:</strong> $4.00/mo $3/mo<br />
<a rel="nofollow" href="https://portal.easyvm.net/store/dallas-ryzen/ryz-1gb?&amp;promocode=LET25OFF" title="Dallas Pre-Order">Dallas Pre-Order</a></p>

<p>RYZ-2GB<br />
1 Core (Fair Share)<br />
2GB RAM<br />
40GB NVMe Storage<br />
2TB @ 1 Gbit/s<br />
1 IP + /64 IPv6<br />
Included Path.net DDOS Protection<br />
<strong>Price:</strong> $8.00/mo $6/mo<br />
<a rel="nofollow" href="https://portal.easyvm.net/store/dallas-ryzen/ryz-2gb?&amp;promocode=LET25OFF" title="Dallas Pre-Order">Dallas Pre-Order</a></p>

<p>Higher Plans are available: <a href="https://easyvm.net/ryzen-vps" rel="nofollow">https://easyvm.net/ryzen-vps</a></p>

<hr />

<p>Locations (Has LG &amp; Test IP on there): <a href="https://easyvm.net/locations" rel="nofollow">https://easyvm.net/locations</a><br />
Discord: <a href="https://easyvm.net/discord" rel="nofollow">https://easyvm.net/discord</a><br />
Twitter: <a href="https://twitter.com/EasyVMnet" rel="nofollow">https://twitter.com/EasyVMnet</a><br />
Email: support@easyvm.net</p>

<hr />

<p><strong>Payment Methods</strong>: PayPal, Credit Card, and Cryptocurrencies</p>

<p>There is fraud protection active, disable any VPN while ordering.</p>

<p>Note to China &amp; others who cannot access Recaptcha, turn on VPN while logging in/creating an account, and then turn it off while paying.</p>

<hr />

<p>Comment your invoice # and I'll double your bandwidth! (If I don't respond for a while it's because Brian has killed me for doing this).</p>

<p>I'll also be giving out $10 Account credit daily til Feb 18th. There is no entry limit, just leave a comment and you'll be entered. Keep it to an extent that mods do not get mad for spam.</p>
]]>
        </description>
    </item>
    <item>
        <title>★SICloud★Happy New Year★TYO/LAX★VDS/VPS/Anti-DDos/Private Cloud</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/5223/sicloud-happy-new-year-tyo-lax-vds-vps-anti-ddos-private-cloud</link>
        <pubDate>Mon, 09 Jan 2023 04:06:41 +0000</pubDate>
        <category>Offers</category>
        <dc:creator>SiliCloud</dc:creator>
        <guid isPermaLink="false">5223@/index.php?p=/discussions</guid>
        <description><![CDATA[<p><strong>VPS / VDS / AnyCast-Anti-DDoS / Managed OpenStack Private Cloud</strong></p>

<p><strong>Los Ángeles &amp; Tokyo OpenStack Cloud Server</strong></p>

<p><strong>DDos-Protect Powered by AS3223</strong></p>

<hr />

<p><strong>Tokyo Special Offers：</strong></p>

<pre><code>Standard Global: (Limit 60 qty)
1 vCPU EPYC 7571 1GiB DDR4 20GiB vSSD (CEPH 3 replicas)
Global Traffic 500G@500Mbps throttled@1Mbps
1 Years 29.18 USD (Recurring)
</code></pre>

<p><a rel="nofollow" href="https://www.silicloud.com/activity/vps#R1C1" title="[Order]">[Order]</a></p>

<pre><code>Standard Global+CN2+9299: (Limit 60 qty)
1 vCPU Intel 8259CL 1GiB DDR4 20GiB vSSD (CEPH 3 replicas)
Global Traffic 500G@500Mbps throttled@1Mbps
1 Years 45.31 USD (Recurring)
</code></pre>

<p><a rel="nofollow" href="https://www.silicloud.com/activity/vps#R1C2" title="[Order]">[Order]</a></p>

<p><strong>Los Angeles Special Offers：</strong></p>

<pre><code>Standard Global: (Limit 100 qty)
1 vCPU EPYC 7571 1GiB DDR4 20GiB vSSD (CEPH 3 replicas)
Global Traffic 500G@500Mbps throttled@1Mbps
1 Years 20.22 USD (Recurring)
</code></pre>

<p><a rel="nofollow" href="https://www.silicloud.com/activity/vps#R2C1" title="[Order]">[Order]</a></p>

<pre><code>Standard Global+CN2: (Limit 100 qty)
1 vCPU EPYC 7571 1GiB DDR4 20GiB vSSD (CEPH 3 replicas)
Global Traffic 500G@300Mbps throttled@1Mbps
1 Years 25.22 USD (Recurring)
</code></pre>

<p><a rel="nofollow" href="https://www.silicloud.com/activity/vps#R2C2" title="[Order]">[Order]</a></p>

<pre><code>VDS Global: (Limit 100 qty)
1 dedicated vCPU EPYC 7571 4GiB DDR4 10+30 GiB vSSD (CEPH 3 replicas)
Global Traffic 1000G@1Gbps throttled@5Mbps
3 Monthes 13.57 USD (Recurring)
</code></pre>

<p><a rel="nofollow" href="https://www.silicloud.com/activity/vps#R3C1" title="[Order]">[Order]</a></p>

<pre><code>AnyCast DDoS mitigate : (LES SP OFFER)
Clean Bandwitdh 50Mbps
AnyCast Filter Power 1Tbps
BGP over GRE
Setup Fee 50 USD
MRC 50 USD (Renew 100 USD)
Location LAX/Tokyo
</code></pre>

<p><a rel="nofollow" href="https://www.silicloud.com/ucenter/" title="[Open Ticket]">[Open Ticket]</a></p>

<p><strong>More Options Listed Here :</strong><br />
<strong><a href="https://www.silicloud.com/activity/vps" rel="nofollow">https://www.silicloud.com/activity/vps</a></strong></p>

<hr />

<p><strong>Looking Glass(Los Ángeles, United State):</strong><br />
* IPv4 (GIA Blended) - <a href="https://lg-cn2gia-west01-us.silicloud.com/" rel="nofollow">https://lg-cn2gia-west01-us.silicloud.com/</a><br />
* IPv6 (GIA Blended) - <a href="https://lg-cn2gia-west01-us-v6.silicloud.com/" rel="nofollow">https://lg-cn2gia-west01-us-v6.silicloud.com/</a><br />
* IPv4 (Global) - <a href="https://lg-global-west01-us.silicloud.com/" rel="nofollow">https://lg-global-west01-us.silicloud.com/</a><br />
* IPv6 (Global) - <a href="https://lg-global-west01-us-v6.silicloud.com/" rel="nofollow">https://lg-global-west01-us-v6.silicloud.com/</a></p>

<p><strong>Looking Glass(Tokyo, Japan):</strong><br />
* IPv4 (GIA Blended) - <a href="https://lg-global-tyo01-jp-cn2.silicloud.com/" rel="nofollow">https://lg-global-tyo01-jp-cn2.silicloud.com/</a><br />
* IPv6 (GIA Blended) - <a href="https://lg-global-tyo01-jp-cn2-v6.silicloud.com/" rel="nofollow">https://lg-global-tyo01-jp-cn2-v6.silicloud.com/</a><br />
* IPv4 (Global) - <a href="https://lg-global-tyo01-jp.silicloud.com/" rel="nofollow">https://lg-global-tyo01-jp.silicloud.com/</a><br />
* IPv6 (Global) - <a href="https://lg-global-tyo01-jp-v6.silicloud.com/" rel="nofollow">https://lg-global-tyo01-jp-v6.silicloud.com/</a></p>

<hr />

<p></p><details><summary><strong>GeekBench 5:</strong></summary>

<pre><code>cvm.g4.amd.c8m24 (EPYC 7302)
https://browser.geekbench.com/v5/cpu/17306500
945 Single-Core Score
6717 Multi-Core Score

cvm.g2.intel.c1m2 (Platinum 8259CL)：
https://browser.geekbench.com/v5/cpu/17259474
962 Single-Core Score
969 Multi-Core Score

cvm.cx1.intel.c2m4 (Platinum 8251)：
https://browser.geekbench.com/v5/cpu/16310282
1166 Single-Core Score
2303 Multi-Core Score

cvm.g1.intel.c2m4 (E5-2683 v4)：
https://browser.geekbench.com/v5/cpu/16310340
683 Single-Core Score
1353 Multi-Core Score

cvm.g1.amd.c2m4 (EPYC 7571)：
https://browser.geekbench.com/v5/cpu/16310342
744 Single-Core Score
1439 Multi-Core Score
</code></pre>

<p></p></details>

<p></p><details><summary><strong>YABS(TYO):</strong></summary>

<pre><code># ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #
#              Yet-Another-Bench-Script              #
#                     v2022-08-20                    #
# https://github.com/masonr/yet-another-bench-script #
# ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #

Thu Sep 29 14:53:57 UTC 2022

Basic System Information:
---------------------------------
Uptime     : 0 days, 0 hours, 8 minutes
Processor  : AMD EPYC 7302 16-Core Processor
CPU cores  : 2 @ 3000.000 MHz
AES-NI     : ✔ Enabled
VM-x/AMD-V : ❌ Disabled
RAM        : 3.8 GiB
Swap       : 0.0 KiB
Disk       : 9.6 GiB
Distro     : Ubuntu 20.04.4 LTS
Kernel     : 5.4.0-117-generic

fio Disk Speed Tests (Mixed R/W 50/50):
---------------------------------
Block Size | 4k            (IOPS) | 64k           (IOPS)
  ------   | ---            ----  | ----           ----
Read       | 13.92 MB/s    (3.4k) | 69.47 MB/s    (1.0k)
Write      | 13.94 MB/s    (3.4k) | 69.86 MB/s    (1.0k)
Total      | 27.87 MB/s    (6.9k) | 139.34 MB/s   (2.1k)
           |                      |
Block Size | 512k          (IOPS) | 1m            (IOPS)
  ------   | ---            ----  | ----           ----
Read       | 96.15 MB/s     (187) | 95.50 MB/s      (93)
Write      | 101.26 MB/s    (197) | 101.86 MB/s     (99)
Total      | 197.41 MB/s    (384) | 197.37 MB/s    (192)

iperf3 Network Speed Tests (IPv4):
---------------------------------
Provider        | Location (Link)           | Send Speed      | Recv Speed
                |                           |                 |
Clouvider       | London, UK (10G)          | 534 Mbits/sec   | 301 Mbits/sec
Online.net      | Paris, FR (10G)           | busy            | busy
Hybula          | The Netherlands (40G)     | 547 Mbits/sec   | 609 Mbits/sec
Uztelecom       | Tashkent, UZ (10G)        | 820 Mbits/sec   | 229 Mbits/sec
Clouvider       | NYC, NY, US (10G)         | 811 Mbits/sec   | 619 Mbits/sec
Clouvider       | Dallas, TX, US (10G)      | 811 Mbits/sec   | 520 Mbits/sec
Clouvider       | Los Angeles, CA, US (10G) | 907 Mbits/sec   | 580 Mbits/sec

iperf3 Network Speed Tests (IPv6):
---------------------------------
Provider        | Location (Link)           | Send Speed      | Recv Speed
                |                           |                 |
Clouvider       | London, UK (10G)          | 665 Mbits/sec   | 442 Mbits/sec
Online.net      | Paris, FR (10G)           | 751 Mbits/sec   | busy
Hybula          | The Netherlands (40G)     | 636 Mbits/sec   | 716 Mbits/sec
Uztelecom       | Tashkent, UZ (10G)        | 520 Mbits/sec   | 243 Mbits/sec
Clouvider       | NYC, NY, US (10G)         | 826 Mbits/sec   | 421 Mbits/sec
Clouvider       | Dallas, TX, US (10G)      | 797 Mbits/sec   | 635 Mbits/sec
Clouvider       | Los Angeles, CA, US (10G) | 909 Mbits/sec   | 776 Mbits/sec

Geekbench 5 Benchmark Test:
---------------------------------
Test            | Value
                |
Single Core     | 940
Multi Core      | 1861
Full Test       | https://browser.geekbench.com/v5/cpu/17632144
</code></pre>

<p></p></details>

<p></p><details><summary><strong>YABS(LAX):</strong></summary>

<pre><code># ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #
#              Yet-Another-Bench-Script              #
#                     v2022-08-20                    #
# https://github.com/masonr/yet-another-bench-script #
# ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## #

Thu Sep 29 14:06:50 UTC 2022

Basic System Information:
---------------------------------
Uptime     : 0 days, 3 hours, 11 minutes
Processor  : Intel(R) Xeon(R) Platinum 8251 CPU @ 3.80GHz
CPU cores  : 2 @ 3791.076 MHz
AES-NI     : ✔ Enabled
VM-x/AMD-V : ❌ Disabled
RAM        : 3.8 GiB
Swap       : 0.0 KiB
Disk       : 10.0 GiB
Distro     : AlmaLinux 8.6 (Sky Tiger)
Kernel     : 4.18.0-372.9.1.el8.x86_64

fio Disk Speed Tests (Mixed R/W 50/50):
---------------------------------
Block Size | 4k            (IOPS) | 64k           (IOPS)
  ------   | ---            ----  | ----           ----
Read       | 4.87 MB/s     (1.2k) | 85.27 MB/s    (1.3k)
Write      | 4.89 MB/s     (1.2k) | 85.72 MB/s    (1.3k)
Total      | 9.77 MB/s     (2.4k) | 170.99 MB/s   (2.6k)
           |                      |
Block Size | 512k          (IOPS) | 1m            (IOPS)
  ------   | ---            ----  | ----           ----
Read       | 95.49 MB/s     (186) | 95.59 MB/s      (93)
Write      | 100.57 MB/s    (196) | 101.96 MB/s     (99)
Total      | 196.06 MB/s    (382) | 197.55 MB/s    (192)

iperf3 Network Speed Tests (IPv4):
---------------------------------
Provider        | Location (Link)           | Send Speed      | Recv Speed
                |                           |                 |
Clouvider       | London, UK (10G)          | 500 Mbits/sec   | 431 Mbits/sec
Online.net      | Paris, FR (10G)           | 557 Mbits/sec   | 272 Mbits/sec
Hybula          | The Netherlands (40G)     | 510 Mbits/sec   | 519 Mbits/sec
Uztelecom       | Tashkent, UZ (10G)        | 326 Mbits/sec   | 121 Mbits/sec
Clouvider       | NYC, NY, US (10G)         | 708 Mbits/sec   | 594 Mbits/sec
Clouvider       | Dallas, TX, US (10G)      | 715 Mbits/sec   | 314 Mbits/sec
Clouvider       | Los Angeles, CA, US (10G) | 824 Mbits/sec   | 834 Mbits/sec

iperf3 Network Speed Tests (IPv6):
---------------------------------
Provider        | Location (Link)           | Send Speed      | Recv Speed
                |                           |                 |
Clouvider       | London, UK (10G)          | 538 Mbits/sec   | 367 Mbits/sec
Online.net      | Paris, FR (10G)           | 611 Mbits/sec   | 215 Mbits/sec
Hybula          | The Netherlands (40G)     | 518 Mbits/sec   | 599 Mbits/sec
Uztelecom       | Tashkent, UZ (10G)        | 463 Mbits/sec   | 116 Mbits/sec
Clouvider       | NYC, NY, US (10G)         | 706 Mbits/sec   | 432 Mbits/sec
Clouvider       | Dallas, TX, US (10G)      | 734 Mbits/sec   | 300 Mbits/sec
Clouvider       | Los Angeles, CA, US (10G) | 788 Mbits/sec   | 814 Mbits/sec

Geekbench 5 Benchmark Test:
---------------------------------
Test            | Value
                |
Single Core     | 1164
Multi Core      | 2264
Full Test       | https://browser.geekbench.com/v5/cpu/17631152
</code></pre>

<p></p></details><br />
<strong>DISK performance(Based on capacity)：</strong><br />
<a href="https://www.silicloud.com/doc/article/block-storage-volume-pricing" rel="nofollow">https://www.silicloud.com/doc/article/block-storage-volume-pricing</a>

<hr />

<p><strong>Areas:</strong><br />
1. Los Ángeles, US (Running)<br />
2. Tokyo, Japan (Running)</p>

<hr />

<p><strong>Why choose SiliCloud:</strong><br />
- High-level self-developed. SiliCloud replaces commercial software with high-level self-developed, which means we have <strong>stronger quality control capabilities</strong>.<br />
- SiliCloud has 9 years of industry experience and has handled a large number of cases, your service will be <strong>very stable</strong><br />
- SiliCloud owns all hardware property rights and does not use outdated hardware<br />
- Lifetime refund according to "pay-as-you-go" to ensure your <strong>lasting satisfaction</strong><br />
- Fairer performance quota, greatly reduced neighbor influence<br />
- SiliCloud has lower charges, welcome to compare prices<br />
- SiliCloud continues to iterate software functions to ensure users keep pace with the times</p>

<hr />

<p><strong>Cloud:</strong><br />
<strong>Tech based:</strong> OpenStack / OVN / DPDK / Ceph / KVM <br />
<strong>Data Center:</strong> Colt TDC1(TYO) Cyxtera LAX3(LAX)<br />
<strong>Traffic :</strong> Only Meter Outbound Monthly<br />
<strong>Network Type:</strong> Multi ISP (Softbank/Lumen/Cogent/HE/Superloop/Unitas/TATA/Telia/CT/CU/CMI/Voxility)<br />
<strong>IP address:</strong> 1 x IPv4 + 8 x IPv6(Each Instance)<br />
<strong>rDNS(PTR):</strong> self-managed</p>

<hr />

<p><strong>AnyCast DDos Protect:</strong><br />
- Distributed filter, near-source filter<br />
- Powered by AS3223<br />
- BGP over GRE<br />
- Small plan for starting up</p>

<hr />

<p><br />
</p><details><summary><strong>IaaS Features:</strong></summary><br />
 - High Availability with Automatic Failover<br />
 - Customize Snapshot<br />
 - Powered by SiliCloud OpenStack Infrastructure<br />
 - Software Defined Networking for private layer2 networks<br />
 - <strong>SSAE 18/ ISAE 3000 SOC 2 Type 2</strong> Certified data center<br />
 - <strong>PCI DSS 3.2.1 / ISO 27001 / NIST 800-53 PE / Tier III</strong> Compliant data center<br />
 - 3 Replicas of Enterprise SSD Clustered Storage<br />
 - High Performance <strong>KVM Virtualization</strong><br />
 - Reliable <strong>Enterprise Hardware</strong><br />
 - 24/7 On-site Staff<br />
 - Detailed Resource Graphs<br />
</details>

<p><strong>Company Profile:</strong><br />
SiliCloud Global (www.silicloud.com) was established in Hong Kong in 2018. Since 2013, the SiliCloud technical team has been serving the IDC industry. Starting in 2022, SiliCloud plans to use 2 years to build 12 Iaas regions in developed economies around the world.</p>

<p><strong>Advantage:</strong><br />
The overall business support and resource control software of public cloud services are the results of SiliCloud's in-depth self-development based on or absorbing open source projects. We have the ability to combine soft and hard technologies and international high-quality resource reserves; at the same time, long-term iteration, high-speed improvement, and time-tested praise are our long-term mission.</p>

<p><strong>What we are doing recently:</strong><br />
1.Preparing for product OSS (object storage)<br />
2.Preparing for product Relational Database (based on Garela cluster)<br />
3.Preparing for product Load Balancer (based on Nginx)<br />
4.Preparing for a new headquarters in Tokyo<br />
5.Preparing for 日本語 support<br />
6.Preparing for mobile support<br />
7.Listening to your suggestions</p>

<p><strong>Cancellation &amp; Refund Policy of this Event:</strong><br />
1. Special offer during 2023-Jan-09 &lt;-&gt; 2023-Jan-31(UTC+8) is 2023 Happy New Year Special offer.<br />
2. 2023 Happy New Year Special offer refund will be converted to pay-as-you-go charge mode.<br />
3. Instance refund will be charged a 5% init fee.<br />
4. Fund withdrawal will be charged a 6% third-party payment fee.</p>

<p><strong>OS Support:</strong><br />
Linux &amp; Unix</p>

<p><strong>Payment Gateway &amp; Currency:</strong><br />
 - Paypal / Stripe / Alipay / Bank wire transfer<br />
 - USD / HKD / JPY / EUR<br />
 - Details: <a href="https://www.silicloud.com/doc/article/PaymentGateway" rel="nofollow">https://www.silicloud.com/doc/article/PaymentGateway</a></p>

<hr />

<p><strong>Terms:</strong><br />
 - AUP: <a href="https://www.silicloud.com/doc/article/AUP" rel="nofollow">https://www.silicloud.com/doc/article/AUP</a><br />
 - GDRP: <a href="https://www.silicloud.com/doc/article/GDPR" rel="nofollow">https://www.silicloud.com/doc/article/GDPR</a><br />
 - Privacy: <a href="https://www.silicloud.com/doc/article/Privacy" rel="nofollow">https://www.silicloud.com/doc/article/Privacy</a><br />
 - SLA: <a href="https://www.silicloud.com/doc/article/SLA" rel="nofollow">https://www.silicloud.com/doc/article/SLA</a><br />
 - TOS: <a href="https://www.silicloud.com/doc/article/TOS" rel="nofollow">https://www.silicloud.com/doc/article/TOS</a></p>

<p><strong>Talk to us:</strong><br />
 - Email: service@mail.sicloud.hk<br />
 - Telegram: <a href="https://t.me/SICloudGlobal" rel="nofollow">https://t.me/SICloudGlobal</a><br />
 - Telegram Channel: <a href="https://t.me/silicloud" rel="nofollow">https://t.me/silicloud</a><br />
 - Telegram GroupChat: <a href="https://t.me/SiliCloudChat" rel="nofollow">https://t.me/SiliCloudChat</a><br />
 - Discord: <a href="https://discord.gg/hpcuJSss" rel="nofollow">https://discord.gg/hpcuJSss</a></p>

<p><strong>2023 Happy New Year gift:</strong><br />
 - Eligible: Yearly order &amp; during date 2023-Jan-09 &lt;-&gt; 2023-Jan-31(UTC+8)<br />
 - Reply "Happy 2023! #[your order id]", we will add <strong>1 month</strong> to your instance.</p>
]]>
        </description>
    </item>
    <item>
        <title>Route48.org :: IPv6 BGP Enabled Tunnelbroker Service</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/4059/route48-org-ipv6-bgp-enabled-tunnelbroker-service</link>
        <pubDate>Sat, 16 Apr 2022 05:47:07 +0000</pubDate>
        <category>Free Offers and Stuff</category>
        <dc:creator>Cloudie</dc:creator>
        <guid isPermaLink="false">4059@/index.php?p=/discussions</guid>
        <description><![CDATA[<p><img src="https://app.route48.org/assets/48_logo_header.png" alt="https://route48.org" title="Route48" /></p>

<p><em>Did you always want to have IPv6 at home, but your ISP doesn't realise it's 2022 and refused to deploy it?<br />
Have you ever thought how cool it would be to have your own personal IPv6 block with your own whois information on it?<br />
Just imagine... how awesome it would be able to do real-world BGP and control your own IPv6 space?<br />
Imagine, no more! <strong>We want to formally introduce Route48.org! Your new free TunnelBroker, IPv6 network allocator, and BGP session / IPv6 transit provider! Yes Free, instant, and automatic!</strong></em></p>

<h1>What is Route48, and why should we care?</h1>

<p>The idea behind this project is to enable a regular user to learn, use and play with IPv6, BGP, and networking in a safe, free and automated manner. As an LIR it is our responsibility to promote and endorse the use of IPv6 to our end clients and serve them with the opportunity to learn and use IP resources (in this case IPv6 resources) <br />
We take pride in knowing that we are actively supporting the adoption of IPv6 for users that would otherwise find it too difficult. But now, without further ado lets go over the features of this new platform:</p>

<hr />

<h2>IPv6 Tunnel Broker</h2>

<p>Route48's tunnel broker functionality enables any user to create what is called a 6in4 tunnel. This gives you the ability to create a simple, VPN-like, tunnel where you get allocated a full /48 IPv6 block and you can route all your IPv6 traffic through one of our nodes. 6in4 tunnel enables any user to bring IPv6 into their home network or to a server that is IPv4 only. From over 13 geographical locations (and growing) you're able to choose the location that is closest to you or your server.</p>

<hr />

<h2>Automated IPv6 prefix Allocation</h2>

<p>Everyone wants to have their IP space and be able to manage the space themselves. Well, now you can, and you can do this for free. In Route48 we can assign and allocate multiple IPv6 prefixes, this means you can control the name, and country and even add your RIPE maintainer to the assigned IPv6 network. You can even take the newly assigned IPv6 space to your hosting providers and ask them to announce the prefix on their network and route the IPv6 space to your existing server(s). We provide LOAs, and each allocation is automatically signed with an RPKI ROA and IRR object. Let's also keep in mind how much of a perfect excuse this would be to learn how to manage IP resources on the RIPE database, securely and safely using your RIPE account.</p>

<hr />

<h2>Automated BGP Sessions</h2>

<p>Now we all know that once you have your IP address, the next step is to get them announced and routed on the internet. While you can use the allocated address space with whatever upstream you wish, Route48 offers automatic BGP sessions over your IPv6 tunnels. This means you can start exporting and announcing your newly allocated IPv6 networks using your BGP sessions and route them to where you wish! (Free and automated IPv6 transit for your newly allocated IPv6 space)</p>

<hr />

<h2>Route48 Global Network &amp; Sponsors</h2>

<p>Route48 is proud to be able to offer so many different node locations for 6in4 tunnels and for transit, as of right now we have nodes in 13 different locations around the world (and a few more in the works)<br />
Yes, all of this is free! But how? Well, we are lucky enough to have a few hosting providers who were willing to sponsor IP space and servers for this project, this is the reason we can offer such a diverse number of locations with such flexible and automated features.</p>

<h2>Further Disclosure...</h2>

<p>This project is a joint partnership between Cloudie Networks &amp; Zappie Host. Administration of all nodes in use provided by our sponsors and directly, are done so by only Cloudie Networks, &amp; Zappie Host.</p>

<hr />

<p>In short, this platform can empower end-users to do more with IPv6 and be less locked into what your hosting provider or ISP provides you. Let's be honest, who doesn't want an IPv6 address that has the words b00b in it :P</p>

<p><em>P.S. we love feedback, criticism, and suggestions. If you have an idea or even a question about this project, we would love to hear it!</em></p>
]]>
        </description>
    </item>
    <item>
        <title>Dynamic IP vs Static IP rates</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/5018/dynamic-ip-vs-static-ip-rates</link>
        <pubDate>Mon, 05 Dec 2022 19:52:55 +0000</pubDate>
        <category>General</category>
        <dc:creator>AndrewL64</dc:creator>
        <guid isPermaLink="false">5018@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Why/How are dynamic IPs cheaper than static IPs?</p>

<p>Tried googling about this but all I got are definitions of what dynamic/static IPs are but economically, why though?</p>

<p>For residential connections, wouldn't it be cheaper to just allocate an address and be done with (until the user cancels their subscription or something) rather than dealing with the whole IP pools &amp; recycling addresses shenanigans?</p>
]]>
        </description>
    </item>
    <item>
        <title>VPS IPv6 /64 for SLAAC at home via wireguard?</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/2621/vps-ipv6-64-for-slaac-at-home-via-wireguard</link>
        <pubDate>Sat, 06 Mar 2021 05:49:18 +0000</pubDate>
        <category>Help</category>
        <dc:creator>topogio</dc:creator>
        <guid isPermaLink="false">2621@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>I'm looking to hand out public IPv6 addresses from my VPS /64 to my clients at home via SLAAC if possible. I have so far been able to get a single IPv6 public address to work via ndp_proxy (instructions <a rel="nofollow" href="https://github.com/burghardt/easy-wg-quick#enabling-ndp-proxy-instead-of-default-ipv6-masquerading" title="here">here</a>) BUT I have been unsuccessful at allowing multiple IPv6 thru the wireguard tunnel to become available to clients.</p>

<p>Here is a dirty diagram of how things would look like:</p>

<ol>
<li><p>VPS <br />
2602:fed2:8888:106:: /64 assigned<br />
eth0 = 2602:fed2:8888:106::1<br />
wg0 = 2602:fed2:8888:106:100::1<br />
-- wg tunnel --</p></li>
<li><p>Home client<br />
wg0 = 2602:fed2:8888:106:100::10 (this will become a 'default gateway' at home - receiving traffic from multiple hosts)<br />
eth0 = 192.168.1.100</p></li>
</ol>

<p>-- client 1 fowards packets to 192.168.1.100 asking for an IPv6 address. Hoping it automatically gets one from the available /64 space.</p>

<p>VPS provider won't give more IPv6 space than /64 unfortunately <img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/frown.png" title=":(" alt=":(" height="18" /> - I haven't tried asking for a /128 for a ptp thats routed to it - I was reading that may work but dont know.</p>

<p>I did try /etc/ndppd.conf with this config but did not see any requests comming from wg0 instance:</p>

<pre><code>proxy eth0 {
  autowire yes
  rule 2602:fed2:8888:106::/64 {
      iface wghub
  }
}

</code></pre>

<p>Anyone with experience that could comment?</p>
]]>
        </description>
    </item>
    <item>
        <title>Request for CAPTCHA Verification in Upcoming Flash Sales</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/4925/request-for-captcha-verification-in-upcoming-flash-sales</link>
        <pubDate>Wed, 23 Nov 2022 17:13:45 +0000</pubDate>
        <category>General</category>
        <dc:creator>bliss</dc:creator>
        <guid isPermaLink="false">4925@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>The Black Friday will come in less than 48 hours.<br />
Suffering from high inflation, tempting offers of this year may be scarce.</p>

<p>So I request CAPTCHA be deployed when ordering, otherwise I'm sure scalpers' automatic scripts will win in terms of speed.</p>

<p>Feel free to "at" spokespersons of your interesting providers. Thank you.</p>
]]>
        </description>
    </item>
    <item>
        <title>Ipv6 / Ipv4 &amp; Dual Stacking</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/3741/ipv6-ipv4-dual-stacking</link>
        <pubDate>Mon, 31 Jan 2022 14:04:04 +0000</pubDate>
        <category>Help</category>
        <dc:creator>hostarts</dc:creator>
        <guid isPermaLink="false">3741@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Hello</p>

<p>In the future as web hosts, are we supposed to have &amp; provide VMs or servers with Dual Stack ?  Or the plan is to actually dump IPV4 which is currently still impossible due to multiple reasons.</p>

<p><img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/grimace.png" title=":#" alt=":#" height="18" /></p>
]]>
        </description>
    </item>
    <item>
        <title>How to use Cloudns as Secondary DNS provider [ Plesk Tested ]</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/3724/how-to-use-cloudns-as-secondary-dns-provider-plesk-tested</link>
        <pubDate>Thu, 27 Jan 2022 18:02:40 +0000</pubDate>
        <category>Technical</category>
        <dc:creator>hostarts</dc:creator>
        <guid isPermaLink="false">3724@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Hello,</p>

<p>I would like to share our experience regarding Secondary DNS for Plesk server. For the moment It has been pretty straight forward to setup Slave nameservers for Plesk.</p>

<p>The issue is, the solution becomes totally unreliable once you have 2 master servers or more. It looks like Plesk themselves couldn't figure out issues related to rndc-keys etc for our case. We have been getting random disconnections etc...</p>

<p>Additionally it requires the maintenance of the nameservers slave and having them on different locations or datacenters</p>

<p>We found solutions such as gDNS from Admin Ahead but it looks too complicated and not that different from the Plesk Slave servers.</p>

<p>We want to share our solution for the community especially the ones using Plesk, we are also planning to test the solution on different Hosting panels such as cPanel.</p>

<p>You can go ahead and create an account at <a href="https://www.cloudns.net/" rel="nofollow">https://www.cloudns.net/</a></p>

<p>Once done, you will need to put edit a default provided PHP script that you can find on their <a rel="nofollow" href="https://github.com/ClouDNS/cloudns-api-bulk-updates/tree/master/plesk-slave-zones-add" title="Github Page">Github Page</a>.</p>

<p>Due to the multiple changes between the old script and the new one we have provided some additional information to the ClouDNS team who corrected some elements on their previous one.</p>

<p>You can read the article they have put together for Plesk servers. <a href="https://www.cloudns.net/wiki/article/250" rel="nofollow">https://www.cloudns.net/wiki/article/250</a></p>

<p>We will try to do the same for cPanel very soon and update this thread.</p>

<p>through this you can enjoy IPV4 &amp; IPV6 Anycast Secondary DNS and protect your Master server</p>

<p>Regarding the Cronjob to setup we made it run once per minute in our case due to multiple DNS zone changes and new clients. Especially that Plesk is kind of slow when it comes to SSL <img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/smile.png" title=":)" alt=":)" height="18" /></p>

<p>We would love to hear your feedback</p>
]]>
        </description>
    </item>
    <item>
        <title>IPv6-to-IPv4 Translation Providers or Other Methods</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/3406/ipv6-to-ipv4-translation-providers-or-other-methods</link>
        <pubDate>Sat, 02 Oct 2021 19:24:13 +0000</pubDate>
        <category>Help</category>
        <dc:creator>lindy54</dc:creator>
        <guid isPermaLink="false">3406@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Basically I couldn't use the Cloudflare method which is for a NAT VPS  which has dedicated IPv6 only. Is there any other providers/solutions for this?</p>
]]>
        </description>
    </item>
    <item>
        <title>IPv6 Neighbor Discovery Responder for KVM VPS</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/2815/ipv6-neighbor-discovery-responder-for-kvm-vps</link>
        <pubDate>Wed, 21 Apr 2021 04:38:33 +0000</pubDate>
        <category>Technical</category>
        <dc:creator>yoursunny</dc:creator>
        <guid isPermaLink="false">2815@/index.php?p=/discussions</guid>
        <description><![CDATA[<blockquote><div>
  <p>This article is originally published on yoursunny.com blog <a href="https://yoursunny.com/t/2021/ndpresponder/" rel="nofollow">https://yoursunny.com/t/2021/ndpresponder/</a></p>
</div></blockquote>

<h2>I Want IPv6 for Docker</h2>

<p>I'm playing with Docker these days, and I want IPv6 in my Docker containers.<br />
The best guide for enabling IPv6 in Docker is <a rel="nofollow" href="https://medium.com/@skleeschulte/how-to-enable-ipv6-for-docker-containers-on-ubuntu-18-04-c68394a219a2">how to enable IPv6 for Docker containers on Ubuntu 18.04</a>.<br />
The first method in that article assigns private IPv6 addresses to containers, and uses <a rel="nofollow" href="https://github.com/robbertkl/docker-ipv6nat">IPv6 NAT</a> similar to how Docker handles IPv4 NAT.<br />
I quickly got it working, but I noticed an undesirable behavior: Network Address Translation (NAT) changes the source port number of outgoing UDP datagrams, even if there's a port forwarding rule for inbound traffic; consequently, a UDP flow with the same source and destination ports is being recognized as two separate flows.</p>

<pre><code>$ docker exec nfd nfdc face show 262
    faceid=262
    remote=udp6://[2001:db8:f440:2:eb26:f0a9:4dc3:1]:6363
     local=udp6://[fd00:2001:db8:4d55:0:242:ac11:4]:6363
congestion={base-marking-interval=100ms default-threshold=65536B}
       mtu=1337
  counters={in={25i 4603d 2n 1179907B} out={11921i 14d 0n 1506905B}}
     flags={non-local permanent point-to-point congestion-marking}
$ docker exec nfd nfdc face show 270
    faceid=270
    remote=udp6://[2001:db8:f440:2:eb26:f0a9:4dc3:1]:1024
     local=udp6://[fd00:2001:db8:4d55:0:242:ac11:4]:6363
   expires=0s
congestion={base-marking-interval=100ms default-threshold=65536B}
       mtu=1337
  counters={in={11880i 0d 0n 1498032B} out={0i 4594d 0n 1175786B}}
     flags={non-local on-demand point-to-point congestion-marking}
</code></pre>

<p>The second method in that article allows every container to have a public IPv6 address.<br />
It avoids NAT and the problems that come with it, but requires the host to have a <em>routed</em> IPv6 subnet.<br />
However, <em>routed</em> IPv6 is hard to come by on KVM servers, because virtualization platform such as <a rel="nofollow" href="https://www.lowendtalk.com/discussion/170194/how-many-ipv6-per-client/p2">Virtualizor does not support routed IPv6 subnets</a>, but can only provide on-link IPv6.</p>

<h2>On-Link IPv6 vs Routed IPv6</h2>

<p>So what's the difference between on-link IPv6 and routed IPv6, anyway?<br />
It differs in how the router at the previous hop is configured to reach a destination IP address.</p>

<p>Let me explain in IPv4 terms first:</p>

<pre><code>|--------| 192.0.2.1/24       |--------| 198.51.100.1/24    |-----------|
| router |--------------------| server |--------------------| container |
|--------|       192.0.2.2/24 |--------|    198.51.100.2/24 |-----------|
            (192.0.2.16-23/24)    |
                                  | 192.0.2.17/28           |-----------|
                                  \-------------------------| container |
                                              192.0.2.18/28 |-----------|
</code></pre>

<ul>
<li><p>The server has on-link IP address 192.0.2.2.</p>

<ul>
<li>The router knows this IP address is on-link because it is in the 192.0.2.0/24 subnet that is configured on the router interface.</li>
<li>To deliver a packet to 192.0.2.2, the router sends an ARP query of 192.0.2.2 to learn the server's MAC address, which should be responded by the server.</li>
</ul></li>
<li><p>The server has routed IP subnet 198.51.100.0/24.</p>

<ul>
<li>The router must be configured to know: 198.51.100.0/24 is reachable via 192.0.2.2.</li>
<li>To deliver a packet to 198.51.100.2, the router first queries its routing table and finds the above entry, then sends an ARP query to learn the MAC address of 192.0.2.2 which should be responded by the server, and finally delivers the packet to the learned MAC address.</li>
</ul></li>
<li><p>The main difference is what IP address is enclosed in the ARP query:</p>

<ul>
<li>If the destination IP address is an on-link IP address, the ARP query contains the destination IP address itself.</li>
<li>If the destination IP address is in a routed subnet, the ARP query contains the nexthop IP address, as determined by the routing table.</li>
</ul></li>
<li><p>If I want to assign an on-link IPv4 address (e.g. 192.0.2.18/28) to a container, the server should be made to answer ARP queries for that IP address so that the router would deliver packets to the server, and then forwards these packets to the container.</p>

<ul>
<li>This technique is called ARP proxy, in which the server responds to ARP queries on behalf of the container.</li>
</ul></li>
</ul>

<p>The situation is a bit more complex in IPv6 because each network interface can have multiple IPv6 addresses, but the same concept applies.<br />
Instead of Address Resolution Protocol (ARP), IPv6 uses <strong>Neighbor Discovery Protocol</strong> that is part of ICMPv6.<br />
A few terminology differs:</p>

<table>
<thead>
<tr>
  <th>IPv4</th>
  <th>IPv6</th>
</tr>
</thead>
<tbody>
<tr>
  <td>ARP</td>
  <td>Neighbor Discovery Protocol (NDP)</td>
</tr>
<tr>
  <td>ARP query</td>
  <td>ICMPv6 Neighbor Solicitation</td>
</tr>
<tr>
  <td>ARP reply</td>
  <td>ICMPv6 Neighbor Advertisement</td>
</tr>
<tr>
  <td>ARP proxy</td>
  <td>NDP proxy</td>
</tr>
</tbody>
</table>

<p>If I want to assign an on-link IPv6 address to a container, the server should respond to neighbor solicitations for that IP address, so that the router would deliver packets to the server.<br />
After that, the server's Linux kernel could route the packet to the container's bridge, as if the destination IPv6 address was in a routed subnet.</p>

<h2>NDP Proxy Daemon to the Rescue, I Hope?</h2>

<p><a rel="nofollow" href="https://github.com/DanielAdolfsson/ndppd">ndppd</a>, or NDP Proxy Daemon, is a program that listens for neighbor solicitations on a network interface and responds with neighbor advertisements.<br />
It is often recommended for dealing with the scenario when the server has only on-link IPv6 but we need a routed IPv6 subnet.</p>

<p>I installed <a rel="nofollow" href="https://packages.ubuntu.com/focal/ndppd">ndppd</a> on one of my servers, and it worked as expected with this configuration:</p>

<pre><code>proxy uplink {
  rule 2001:db8:fbc0:2:646f:636b:6572::/112 {
    auto
  }
}
</code></pre>

<p>I can start up a Docker container with a public IPv6 address.<br />
It can reach the IPv6 Internet, and can be ping-ed from outside.</p>

<pre><code>$ docker network create --ipv6 --subnet=172.26.0.0/16
  --subnet=2001:db8:fbc0:2:646f:636b:6572::/112 ipv6exposed
118c3a9e00595262e41b8cb839a55d1bc7bc54979a1ff76b5993273d82eea1f4

$ docker run -it --rm --network ipv6exposed
  --ip6 2001:db8:fbc0:2:646f:636b:6572:d002 alpine

# wget -q -O- https://www.cloudflare.com/cdn-cgi/trace | grep ip
ip=2001:db8:fbc0:2:646f:636b:6572:d002
</code></pre>

<p>However, when I repeated the same setup on another KVM server, things didn't go well: the container cannot reach the IPv6 Internet at all.</p>

<pre><code>$ docker run -it --rm --network ipv6exposed
  --ip6 2001:db8:f440:2:646f:636b:6572:d003 alpine

/ # ping -c 4 ipv6.google.com
PING ipv6.google.com (2607:f8b0:400a:809::200e): 56 data bytes

--- ipv6.google.com ping statistics ---
4 packets transmitted, 0 packets received, 100% packet loss
</code></pre>

<h2>What's Wrong with <em>ndppd</em>?</h2>

<p>Why <em>ndppd</em> works on the first server, but does not work on the second server?<br />
What's the difference?<br />
We need to go deeper, so I turned to <strong>tcpdump</strong>.</p>

<p>On the first server, I see:</p>

<pre><code>$ sudo tcpdump -pi uplink icmp6
19:13:17.958191 IP6 2001:db8:fbc0::1 &gt; ff02::1:ff72:d002:
    ICMP6, neighbor solicitation, who has 2001:db8:fbc0:2:646f:636b:6572:d002, length 32
19:13:17.958472 IP6 2001:db8:fbc0:2::2 &gt; 2001:db8:fbc0::1:
    ICMP6, neighbor advertisement, tgt is 2001:db8:fbc0:2:646f:636b:6572:d002, length 32
</code></pre>

<ul>
<li>The neighbor solicitation from the router comes from a <em>global</em> IPv6 address.</li>
<li><p>The server responds with a neighbor advertisement from its <em>global</em> IPv6 address.<br />
Note that this address differs from the container's address.</p></li>
<li><p>IPv6 works in the container.</p></li>
</ul>

<p>On the second server, I see:</p>

<pre><code>$ sudo tcpdump -pi uplink icmp6
00:07:53.617438 IP6 fe80::669d:99ff:feb1:55b8 &gt; ff02::1:ff72:d003:
    ICMP6, neighbor solicitation, who has 2001:db8:f440:2:646f:636b:6572:d003, length 32
00:07:53.617714 IP6 fe80::216:3eff:fedd:7c83 &gt; fe80::669d:99ff:feb1:55b8:
    ICMP6, neighbor advertisement, tgt is 2001:db8:f440:2:646f:636b:6572:d003, length 32
</code></pre>

<ul>
<li>The neighbor solicitation from the router comes from a <em>link-local</em> IPv6 address.</li>
<li>The server responds with a neighbor advertisement from its <em>link-local</em> IPv6 address.</li>
<li>IPv6 does not work in the container.</li>
</ul>

<p>Since IPv6 has been working on the second server for IPv6 addresses assigned to the server itself, I added a new IPv6 address and captured its NDP exchange:</p>

<pre><code>$ sudo tcpdump -pi uplink icmp6
00:29:39.378544 IP6 fe80::669d:99ff:feb1:55b8 &gt; ff02::1:ff00:a006:
    ICMP6, neighbor solicitation, who has 2001:db8:f440:2::a006, length 32
00:29:39.378581 IP6 2001:db8:f440:2::a006 &gt; fe80::669d:99ff:feb1:55b8:
    ICMP6, neighbor advertisement, tgt is 2001:db8:f440:2::a006, length 32
</code></pre>

<ul>
<li>The neighbor solicitation from the router comes from a <em>link-local</em> IPv6 address, same as above.</li>
<li>The server responds with a neighbor advertisement from the target <em>global</em> IPv6 address.</li>
<li>IPv6 works on the server from this address.</li>
</ul>

<p>In IPv6, each network interface can have multiple IPv6 addresses.<br />
When the Linux kernel responds to a neighbor solicitation in which the target address is assigned to the same network interface, it <a rel="nofollow" href="https://github.com/torvalds/linux/blob/v5.4/net/ipv6/ndisc.c#L528-L534">uses that particular address</a> as the source address.<br />
On the other hand, <em>ndppd</em> transmits neighbor advertisements via a <a rel="nofollow" href="https://github.com/DanielAdolfsson/ndppd/blob/0.2.5/src/iface.cc#L188">PF&#95;INET6 socket</a> and <a rel="nofollow" href="https://github.com/DanielAdolfsson/ndppd/blob/0.2.5/src/iface.cc#L414">does not specify the source address</a>.<br />
In this case, some complicated rules for <a rel="nofollow" href="https://tools.ietf.org/html/rfc6724">default address selection</a> come into play.</p>

<p>One of these rules is preferring a source address that has the same <em>scope</em> as the destination address (i.e. the router).<br />
On my first server, the router uses a <em>global</em> address, and the server selects a <em>global</em> address as the source address on its neighbor advertisement.<br />
On my second server, the router uses a <em>link-local</em> address, and the server selects a <em>link-local</em> address, too.</p>

<p>In an unfiltered network, the router wouldn't care where the neighbor advertisements come from.<br />
However, when it comes to a KVM server on Virtualizor, the hypervisor would treat such packets as attempted IP spoofing attacks, and drop them via <a rel="nofollow" href="https://www.softaculous.com/board/index.php?tid=5662">ebtables rules</a>.<br />
Consequently, the neighbor advertisement never reaches the router, and the router has no way to know how to reach the container's IPv6 address.</p>

<h2>ndpresponder: NDP Responder for KVM VPS</h2>

<p>I tried a few tricks such as <a rel="nofollow" href="https://yoursunny.com/t/2020/preferred-lft-netplan/">deprecating the link-local address</a>, but none of them worked.<br />
Thus, I made my own NDP responder that sends neighbor advertisements from the target address.</p>

<p><strong>ndpresponder</strong> is a Go program using the <a rel="nofollow" href="https://pkg.go.dev/github.com/google/gopacket">GoPacket</a> library.</p>

<ol>
<li>The program opens an AF&#95;PACKET socket, with a BPF filter for ICMPv6 neighbor solicitation messages.</li>
<li>When a neighbor solicitation arrives, it checks the target address against a user-supplied IP range.</li>
<li>If the target address is in the range used for Docker containers, the program constructs an ICMPv6 neighbor advertisement messages and transmits it through the same AF&#95;PACKET socket.</li>
</ol>

<p>A major difference from <em>ndppd</em> is that, the source IPv6 address on a neighbor advertisement message is always set to the same value as the target address of the neighbor solicitation, so that the message wouldn't be dropped by the hypervisor.<br />
This is made possible because I'm sending the message via an AF&#95;PACKET socket, instead of the AF&#95;INET6 socket used by <em>ndppd</em>.</p>

<p><strong>ndpresponder</strong> operates similarly as <em>ndppd</em> in "static" mode.<br />
It does not forward neighbor advertisements to the destination subnet like <em>ndppd</em> does in its "auto" mode, but this feature isn't important on a KVM server.</p>

<p>If <em>ndppd</em> doesn't seem to work on your KVM VPS, give <strong>ndpresponder</strong> a try!<br />
Head to my GitHub repository for installation and usage instructions:<br />
<a rel="nofollow" href="https://github.com/yoursunny/ndpresponder">https://github.com/yoursunny/ndpresponder</a></p>
]]>
        </description>
    </item>
    <item>
        <title>NL or UK | NVMe SSD | KVM | 50GB | 6TB | DDOS Protection | Free Direct Admin | €35 / year</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/2958/nl-or-uk-nvme-ssd-kvm-50gb-6tb-ddos-protection-free-direct-admin-35-year</link>
        <pubDate>Thu, 27 May 2021 08:24:40 +0000</pubDate>
        <category>Offers</category>
        <dc:creator>InceptionHosting</dc:creator>
        <guid isPermaLink="false">2958@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>A little offer for the long weekend (in the UK anyway)</p>

<ul>
<li>2 CPU Core (Equal Share)</li>
<li>2 GB Ram</li>
<li>50 GB Pure NVMe SSD Disk space</li>
<li>6 TB Bandwidth</li>
<li>1 x IPv4 address (Automated PTR/rDNS records)</li>
<li>1 x /64 IPv6 (Automated PTR/rDNS records)</li>
<li>DDOS Protection included</li>
<li>Free Direct Admin by request</li>
</ul>

<p>€35.00 /year - no promo code needed just select annual payment.<br />
This offer is recurring.</p>

<p>NL: Order link: <a href="https://clients.inceptionhosting.com/cart.php?a=add&amp;pid=215" rel="nofollow">https://clients.inceptionhosting.com/cart.php?a=add&amp;pid=215</a><br />
UK Order link: <a href="https://clients.inceptionhosting.com/cart.php?a=add&amp;pid=185" rel="nofollow">https://clients.inceptionhosting.com/cart.php?a=add&amp;pid=185</a></p>

<hr />

<p>A few extra bits:</p>

<ul>
<li>In the UK/London there is a mix of E-2276G and E3-1270v5/6 CPU's allocation is random.</li>
<li>In the Netherlands/Amsterdam there is a mix of E-2276G and E-2278G CPU's allocation is random.</li>
<li>Netherlands/Amsterdam ports can burst up to 10gbit.</li>
<li>If you want to switch locations after purchase that is fine we will do that for you once at no extra cost.</li>
</ul>

<p>Network ping/mtr/trace tests: <a href="https://as62240.net/tools" rel="nofollow">https://as62240.net/tools</a><br />
Network speed tests: <a href="https://as62240.net/speedtest" rel="nofollow">https://as62240.net/speedtest</a></p>

<p>This offer is intended to end on June 2nd but may go on a bit longer than that depending on interest.</p>

<p>Orders from Brazil and China are not currently being accepted.<br />
Orders placed while on a VPN or proxy will be automatically rejected.</p>

<hr />

<p>If you want any sort of custom deal, it is a good time to ask. <img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/smile.png" title=":)" alt=":)" height="18" /></p>

<p>Cheers,</p>

<p>Ant.</p>
]]>
        </description>
    </item>
    <item>
        <title>Spearware Networks &quot;has&quot; IPv6 now!</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/3018/spearware-networks-has-ipv6-now</link>
        <pubDate>Sun, 13 Jun 2021 00:11:40 +0000</pubDate>
        <category>General</category>
        <dc:creator>SWN_Michael</dc:creator>
        <guid isPermaLink="false">3018@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>So... I've flipped the switch for IPv6 <img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/smile.png" title=":)" alt=":)" height="18" /> (months late I know) but it's here! If you're a current customer, submit a ticket and I'll assign your /64. If you're new, just order and it'll be automatically assigned.</p>

<p>Caveats:</p>

<ul>
<li>IPv6 is currently provided only via Cogent. This means that if you're trying to access either Google or someone single homed on Hurricane Electric, you will need to do it via IPv4. I'm working on figuring out a cost effective solution to resolve this issue and hope to have it fixed soon.</li>
<li>IPv6 connectivity is not perfect (see the first bullet), however if you're having an issue, submit a ticket, and I'll see what can be done.</li>
</ul>
]]>
        </description>
    </item>
    <item>
        <title>drServer.net ||| cPanel Web Hosting, Free DNS, Email, VPS and Dedicated! Basket of deals!</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/2937/drserver-net-cpanel-web-hosting-free-dns-email-vps-and-dedicated-basket-of-deals</link>
        <pubDate>Wed, 19 May 2021 11:44:28 +0000</pubDate>
        <category>Offers</category>
        <dc:creator>Radi</dc:creator>
        <guid isPermaLink="false">2937@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Hello friends,</p>

<p>We are back with our offer table with current stock.</p>

<p><strong>Starting with the shared hosting, I’d like to talk about the…</strong><br />
<em>…main features each account comes with:</em><br />
Quick Technical Support - You won’t be waiting for hours to receive a reply to a single question.<br />
30 Day Money Back Guarantee - Don’t like it? Get your money back for your first order.<br />
HIGH Clock CPU<br />
ECC Registered RAM<br />
Enterprise Sandisk OPTIMUS MAX SAS SSD Hard Drives - Delivering ultrafast I/O to get your applications loading with extreme speed<br />
Hardware RAID-10 with BBU - For guaranteed data safety in case of disk failure<br />
cPanel Control Panel - The most widely known control panel on the market<br />
Web Server with HHVM support - Guaranteed to work faster than the usual LAMP stack<br />
MariaDB (MySQL) - Faster than ordinary MySQL and compatible with it<br />
Multiple PHP Versions - Not every app is updated to run on newest and greatest, so you get ability to choose.<br />
JetBackup - Backup your website to a remote location free of charge.<br />
Softaculous Auto Installer - You can install your favourite scripts<br />
MailChannels Email Relay - Prevent your emails from landing into SPAM<br />
FREE cPanel Migration - On Request<br />
and much much more, which we will leave for you to discover.</p>

<p><em>Without further delay, straight to the offer:</em></p>

<p><strong>Promo-1</strong><br />
Disk Space: 5 GB<br />
Disk Type: Enterprise SAS SSD<br />
RAID: Hardware RAID 10 with BBU<br />
Backup: Automated incremental<br />
Network Bandwidth: 1 TB<br />
Bandwidth Type: Premium Multihomed<br />
Network Pipe: 1 Gbps<br />
Email Accounts: Unlimited<br />
Email relay limit: 300 / hr<br />
FTP Accounts: Unlimited<br />
MySQL Databases: Unlimited<br />
NodeJS Support: Yes<br />
Python Support: Yes<br />
Ruby Support: Yes<br />
Proxy: Nginx<br />
HHVM Support: Yes<br />
PHP Version: All major selectable<br />
Analytics: Yes<br />
Free enterprise SSL: No<br />
Free domain name / domain transfer: No<br />
Panel Type: cPanel<br />
Auto Installer: Softaculous<br />
Mail Relay: MailChannels<br />
DC Location: Dallas - TX - USA<br />
Price: 2.00$/month<br />
Price(Yearly): 20.00$/year<br />
Order link: <a href="https://portal.drserver.net/?cmd=cart&amp;action=add&amp;id=146" rel="nofollow">https://portal.drserver.net/?cmd=cart&amp;action=add&amp;id=146</a></p>

<p><em>Extra Deal: Try the plan for just $1 dollar for the first month with code "DDAAE2WYO6W0M" (code is only valid on monthly billing cycle).</em></p>

<p><strong>Promo-10G</strong><br />
Disk Space: 10 GB<br />
Disk Type: Enterprise SAS SSD<br />
RAID: Hardware RAID 10 with BBU<br />
Backup: Automated incremental<br />
Network Bandwidth: 1 TB<br />
Bandwidth Type: Premium Multihomed<br />
Network Pipe: 1 Gbps<br />
Email Accounts: Unlimited<br />
Email relay limit: 300 / hr<br />
FTP Accounts: Unlimited<br />
MySQL Databases: Unlimited<br />
NodeJS Support: Yes<br />
Python Support: Yes<br />
Ruby Support: Yes<br />
Proxy: Nginx<br />
HHVM Support: Yes<br />
PHP Version: All major selectable<br />
Analytics: Yes<br />
Free enterprise SSL: No<br />
Free domain name / domain transfer: No<br />
Panel Type: cPanel<br />
Auto Installer: Softaculous<br />
Mail Relay: MailChannels<br />
DC Location: Dallas - TX - USA<br />
Price: 3.00$/month<br />
Price(Yearly): 30.00$/year<br />
Promocode to get this pricing: KIK8ZIUTKWGEP-WEBPROMO10G<br />
Order link: <a href="https://portal.drserver.net/?cmd=cart&amp;action=add&amp;id=146" rel="nofollow">https://portal.drserver.net/?cmd=cart&amp;action=add&amp;id=146</a></p>

<p><em>Extra Deal: Try the plan for just $1 dollar for the first month with code "ACQ7HDDGFAM2U" (code is only valid on monthly billing cycle).</em></p>

<p><strong>We also offer a Zimbra-based email service</strong><br />
<em>which comes with the features listed.</em><br />
Zimbra Collaboration Suite<br />
Nice Webmail Client<br />
The option to use a desktop app<br />
Free DNS hosting available for easy setup.<br />
MailChannels relay, to ensure deliverability of your emails<br />
POP/SMTP/IMAP. to make your email accessible by your favourite mail client<br />
Host as much domains as needed<br />
Multiple accounts<br />
White-labelled WebMail</p>

<p><em>Moving on to the offer.</em></p>

<p><strong>Zimbra 10 Pack</strong><br />
10 Email Accounts<br />
10 GB Storage<br />
Unlimited Domains<br />
MailChannels Relay<br />
Online Webmail<br />
Zimbra Desktop<br />
Price: $5.00/month or $50/year<br />
Promocode for yearly payment: Z9WFY2GL3ZN-ZIMBRAYEARLY</p>

<p>Order Link: <a href="https://drserver.net/mail.php?pk_campaign=LES" rel="nofollow">https://drserver.net/mail.php?pk_campaign=LES</a></p>

<p>Extra Deal: Try the above mail hosting plan for just $1 dollar for the first month with code "JQJGQHFVFB2NMDCT" (code is only valid on monthly billing cycle).</p>

<p><em>Moving on to our VPS servers…</em></p>

<p><strong>VPS Features:</strong><br />
All VPS offers are powered by Virtualizor control panel.<br />
All servers come with 1 IPv4 unlesss otherwise stated.<br />
Custom ISO are possible for VPS only a quick ticket.<br />
Free DNS hosting available with all VPS.<br />
Free 1x manual snapshot available with all VPS.<br />
IPv6 right now is available in Dallas.<br />
IPv4 rDNS is only available for Dallas.<br />
The VPS in this offer are not managed, however we can provide you with application support and install the applications, you require for FREE.<br />
All VPS are hosted on powerful E5 nodes with minimum of 128 GB RAM and SSDs in RAID-10.</p>

<p><em>and now the offers…</em></p>

<p><strong>KVM-XS</strong><br />
2 CPU Cores<br />
2048 MB RAM<br />
45 GB SSD Disk<br />
2048 GB Bandwidth<br />
1 IPv4<br />
/64 IPv6<br />
KVM<br />
Linux/Windows<br />
Free DNS Hosting included<br />
Free 1 manual snapshot included<br />
Location: Dallas<br />
Price: $5/mo or $50/year<br />
Promocode(Monthly): 8RKY9I70ED1JI-VPS2GB-M<br />
Promocode(Yearly): KVMXS-YEARLY<br />
Order link: <a href="https://portal.drserver.net/?cmd=cart&amp;action=add&amp;id=148" rel="nofollow">https://portal.drserver.net/?cmd=cart&amp;action=add&amp;id=148</a></p>

<p><strong>KVM-S</strong><br />
4 CPU Cores<br />
4096 MB RAM<br />
90 GB SSD Disk<br />
4096 GB Bandwidth<br />
1 IPv4<br />
/64 IPv6<br />
KVM<br />
Linux/Windows<br />
Free DNS Hosting included<br />
Free 1 manual snapshot included<br />
Location: Dallas<br />
Price: $7/mo or $70/year<br />
Promocode(Monthly): LET-It-GO<br />
Promocode(Yearly): KVMS-YEARLY<br />
Order link: <a href="https://drserver.net/vps.php?pk_campaign=LES" rel="nofollow">https://drserver.net/vps.php?pk_campaign=LES</a></p>

<p><em>DNS Hosting is also available as a standalone service as well.</em></p>

<p><strong>DNS Hosting Features</strong><br />
Powered by PowerDNS and HostBill<br />
Ability to create multiple types of DNS records<br />
Easy and centralized management<br />
DNSSEC<br />
and more...</p>

<p><em>and now the offer:</em></p>

<p><strong>DNS-1</strong><br />
DNS Hosting for 1 zone<br />
PowerDNS<br />
Dallas Location of Nameservers<br />
White-Label NS Domain<br />
Price: $0/month<br />
Link: <a href="https://portal.drserver.net/?cmd=cart&amp;action=add&amp;id=155" rel="nofollow">https://portal.drserver.net/?cmd=cart&amp;action=add&amp;id=155</a></p>

<p>Special Offer: Completely free forever for 1 zone. Use it to test it - we can offer a potential discount for people who help us iron out any issues with the system. We would love to get some feedback on it.</p>

<p>If you wish to get more zones, we offer them as premium plan.</p>

<p><strong>DNS-5</strong><br />
DNS Hosting for 5 zones<br />
PowerDNS<br />
Dallas Location of Nameservers<br />
White-Label NS Domain<br />
Price: $1/month<br />
Link: <a href="https://portal.drserver.net/?cmd=cart&amp;action=add&amp;id=154" rel="nofollow">https://portal.drserver.net/?cmd=cart&amp;action=add&amp;id=154</a></p>

<p>More options for DNS hosting are available here: <a href="https://portal.drserver.net/?/cart/dns/" rel="nofollow">https://portal.drserver.net/?/cart/dns/</a> .</p>

<p>Last, but not by importance: THE DEDICATED SERVERS.</p>

<p><em>Dedicated Servers Features</em><br />
All offers come with 1 IPv4 unless otherwise stated.<br />
rDNS is available.<br />
Free DNS Hosting for 10 zones available with every server.<br />
Custom ISO are possible through a quick ticket. We can load any OS you need. This does not apply to NO-IPMI servers.<br />
<strong><em>Bandwidth is upgrade-able to 1 Gbps for free(on non-Atom servers only). Ticket us for more details.</em></strong><br />
We are an unmanaged provider, but we will do our best to assist with the configuration of your applications and getting your servers up and running.<br />
We can offer you CUSTOM-BUILT dedicated servers. Please open a ticket to discuss your requirements.</p>

<p><strong>Intel® Atom™ C2750 (8-Core, 2.4GHz)</strong><br />
RAM: 8 GB DDR3<br />
Disk: 1 x 500 GB SATA<br />
Bandwidth: 100 Mbps<br />
1 IPv4<br />
NO-IPMI, you are limited to the OS, which are available on order form<br />
Location: Dallas<br />
Price: $12/mo OR $120/year<br />
Promocode(Monthly): YBDX4U70Q<br />
Promocode(Yearly): 6IER7WVC-NOIPMI<br />
Order link: <a href="https://drserver.net/dedicated.php?pk_campaign=LES" rel="nofollow">https://drserver.net/dedicated.php?pk_campaign=LES</a></p>

<p><strong>Intel® Atom™ C2750 (4-Core, 2.4GHz)</strong><br />
RAM: 8 GB DDR3<br />
Disk: 1 x 200 GB SSD<br />
Bandwidth: 100 Mbps<br />
1 IPv4<br />
Location: Dallas<br />
Price: $13/mo OR $130/year<br />
Promocode(Monthly): YBDX4U70Q<br />
Promocode(Yearly): 1VIVHOVA8VS3-DELLIPMI<br />
Order link: <a href="https://drserver.net/dedicated.php?pk_campaign=LES" rel="nofollow">https://drserver.net/dedicated.php?pk_campaign=LES</a></p>

<p><strong>Intel® Xeon® E-2134 (4-Core, 8-Thread, 3.5GHz)</strong><br />
RAM: 16 GB DDR4<br />
Disk: 1 x 480 GB SSD<br />
Bandwidth: 100 Mbps or 1 Gbps(30 TB)/via ticket<br />
1 IPv4<br />
Location: Dallas<br />
Price: $56/mo OR $560/year<br />
Promocode(Monthly): YBDX4U70Q<br />
Promocode(Yearly): 4UHYIKNFTAIG-ESERIES<br />
Order link: <a href="https://drserver.net/dedicated.php?pk_campaign=LES" rel="nofollow">https://drserver.net/dedicated.php?pk_campaign=LES</a></p>

<p><strong>Intel® Xeon® E-2136 (6-Core, 12-Thread, 3.3GHz)</strong><br />
RAM: 16 GB DDR4<br />
Disk: 1 x 480 GB SSD<br />
Bandwidth: 100 Mbps or 1 Gbps(30 TB)/via ticket<br />
1 IPv4<br />
Location: Dallas<br />
Price: $66/mo OR $660/year<br />
Promocode(Monthly): YBDX4U70Q<br />
Promocode(Yearly): 4UHYIKNFTAIG-ESERIES<br />
Order link: <a href="https://drserver.net/dedicated.php?pk_campaign=LES" rel="nofollow">https://drserver.net/dedicated.php?pk_campaign=LES</a></p>

<p><strong>About us:</strong><br />
drServer started offering service around November of 2013, so we’re close to 7 years old now. We are a family-owned hosting company, ARIN Member and a RIPE LIR. We own all our hardware. The doctor is still here and still stronger than ever and can satisfy all your hosting needs.</p>

<p><strong>Useful Links Section:</strong><br />
Terms of Service: <a href="https://drserver.net/termsofservice.php?pk_campaign=LES" rel="nofollow">https://drserver.net/termsofservice.php?pk_campaign=LES</a><br />
AUP: <a href="https://drserver.net/aup.php?pk_campaign=LES" rel="nofollow">https://drserver.net/aup.php?pk_campaign=LES</a><br />
Ticket us: <a href="https://portal.drserver.net/?/tickets/new/" rel="nofollow">https://portal.drserver.net/?/tickets/new/</a><br />
Discord: <a href="http://discord.gg/3H5RfvY" rel="nofollow">http://discord.gg/3H5RfvY</a><br />
Facebook: <a href="https://www.facebook.com/drserver.net/" rel="nofollow">https://www.facebook.com/drserver.net/</a><br />
Twiter: <a href="https://twitter.com/drservervps" rel="nofollow">https://twitter.com/drservervps</a></p>

<p><strong>FAQ:</strong><br />
Q: Do you allow gameservers?<br />
Because most gameservers generally attract (D)DoS attacks, we currently do not allow them on our network.<br />
This also applies to voiceservers such as Teamspeak and Mumble.<br />
Q: Can I run a VPN?<br />
Private VPN servers are perfectly fine with us. Public ones, however, are not.<br />
Q: What’s your refund policy?<br />
We do have a 30-day refund policy for your first service with us.<br />
Q: What payment methods are accepted?<br />
We accept payments via PayPal.<br />
Q: Do you have a test IP/file?<br />
Yes.<br />
Q: Do you offer instant setup?<br />
Servers on this offer are instantly provisioned, subject to stock availability.<br />
Q: Why my order was marked as fraud?<br />
The usual reason for an order, being marked as fraud is if you place it from a VPN/Server IP. We do not allow such kind of orders, so if you intend to order with a VPN, it will be marked as fraud. If you are on vacation/holiday and live in a different country, please contact us prior to ordering.</p>

<p><strong>Network Info:</strong><br />
Dallas, USA<br />
Test IPv4: 192.138.210.63<br />
Test IPv6: 2604:0880:0052:0000:0000:0000:01e5:657b<br />
Test file(IPv4): <a href="http://lg-dal.ipv4.drserver.net/100MB.test" rel="nofollow">http://lg-dal.ipv4.drserver.net/100MB.test</a><br />
Looking glass(IPv4): <a href="http://lg-dal.ipv4.drserver.net/" rel="nofollow">http://lg-dal.ipv4.drserver.net/</a><br />
Test file(IPv6): <a href="http://lg-dal.ipv6.drserver.net/100MB.test" rel="nofollow">http://lg-dal.ipv6.drserver.net/100MB.test</a><br />
Looking glass(IPv6): <a href="http://lg-dal.ipv6.drserver.net/" rel="nofollow">http://lg-dal.ipv6.drserver.net/</a></p>

<p>All network ports have DDoS protection. Our bandwidth mix includes: Level 3, Cogent, Hurricane Electric, GTT, Telia, Equinix Peering, DECIX Peering, Private Peering.</p>

<p>Thanks for reading the thread! Please let us know if you have any questions!</p>

<p>Have a good day!</p>
]]>
        </description>
    </item>
    <item>
        <title>Install Ubuntu from ISO on IPv6-only KVM Server in SolusIO</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/2857/install-ubuntu-from-iso-on-ipv6-only-kvm-server-in-solusio</link>
        <pubDate>Wed, 28 Apr 2021 04:56:30 +0000</pubDate>
        <category>Technical</category>
        <dc:creator>yoursunny</dc:creator>
        <guid isPermaLink="false">2857@/index.php?p=/discussions</guid>
        <description><![CDATA[<blockquote><div>
  <p>This article is originally published on yoursunny.com blog <a href="https://yoursunny.com/t/2021/SolusIO-IPv6-ISO/" rel="nofollow">https://yoursunny.com/t/2021/SolusIO-IPv6-ISO/</a></p>
</div></blockquote>

<p>I recently obtained a KVM virtual server on <a rel="nofollow" href="https://www.solus.io/">SolusIO</a> platform, and I want to install Ubuntu 20.04 Server from the official ISO image.<br />
This is not as easy as I hoped, but I figured it out.</p>

<p>Note: if you are in a hurry, skip the "Background" and start from "Part 1" section.</p>

<h2>Background: SolusIO cannot Mount ISO Image</h2>

<p>SolusIO is a virtual infrastructure management solution published by Plesk International Gmbh, the same company behind the popular SolusVM software.<br />
They describe SolusIO to be the successor of SolusVM, with more focus on the self-service approach for end users.</p>

<p>SolusIO inherits the same clean user interface from SolusVM, and is easy to use.<br />
However, as a <a rel="nofollow" href="https://en.wikipedia.org/wiki/Power_user">power user</a>, I notice several features are missing in SolusIO.<br />
One of these features is the ability to install the operating system from an ISO image.</p>

<p>Presently, SolusIO only supports installing operating systems from the provided templates.<br />
While a template installation is convenient, I prefer to install from official ISO images so that I can have better control over what goes into my system, and avoid vulnerabilities such as the <a rel="nofollow" href="https://www.lowendtalk.com/discussion/169685/vulnerability-in-solusvm-debian-10-template-debianuser-backdoor-default-user/p1">debianuser backdoor</a>.</p>

<p>An easy way to load a ISO installer is through <a rel="nofollow" href="https://netboot.xyz/">netboot.xyz</a>, a hosted service that can boot a server over the Internet and download the installer of many Linux and BSD distributions.<br />
Even if the VPS hosting platform does not support mounting ISO images, it is possible to install iPXE bootloader per <a rel="nofollow" href="https://lowendspirit.com/tip-install-os-via-netboot-xyz-without-iso-support/">Tip: Install OS via netboot.xyz without ISO support</a>, and then start netboot.xyz from there.</p>

<p>However, this method did not work for me.<br />
The iPXE package, as distributed in most operating systems, only supports IPv4.<br />
To make it work on my IPv6-only server, I would have to recompile iPXE with IPv6 enabled, which could be a complicated task.<br />
I need another way.</p>

<h2>Part 1: Boot from ISO on Hard Disk</h2>

<p>I thought: can I download the ISO image and load it from hard disk, and start the installer, just like netboot.xyz does, but without going through the network?<br />
I searched for "how to boot ISO from hard disk", and found a helpful guide from Ubuntu documentation site: <a rel="nofollow" href="https://help.ubuntu.com/community/Grub2/ISOBoot">Grub2/ISOBoot</a>.<br />
Piecing together the information, I found the exact steps to start the Ubuntu installer.</p>

<ol>
<li><p>Install Debian 10 from SolusIO template.</p>

<p>As much as I love Ubuntu, it does not work for some reason.</p></li>
<li><p>SSH into the server as root, and download <a rel="nofollow" href="https://releases.ubuntu.com/focal/">official Ubuntu ISO image</a>.</p>

<pre><code>wget https://releases.ubuntu.com/focal/ubuntu-20.04.2-live-server-amd64.iso
</code></pre></li>
<li><p>Modify <code>/etc/grub.d/40_custom</code> file, and append the following text:</p>

<pre><code>menuentry "Ubuntu 20.04 ISO" {
 set isofile="/root/ubuntu-20.04.2-live-server-amd64.iso"
 rmmod tpm
 loopback loop (hd0,1)$isofile
 linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject toram
 initrd (loop)/casper/initrd
}
</code></pre>

<p>In this snippet:</p></li>
</ol>

<ul>
<li>The path after <code>isofile=</code> is where we downloaded the ISO image.</li>
<li><code>(hd0,1)</code> is <code>/dev/sda1</code> written in a syntax recognized by the GRUB bootloader.<br />
 If the ISO image file is on a different disk partition, you may need different numbers.<br />
 Search for "drive number" on <a rel="nofollow" href="https://help.ubuntu.com/community/Grub2/ISOBoot">Grub2/ISOBoot</a> page for more information.</li>
<li>The <code>toram</code> option copies the ISO image from the hard drive to the memory, which is necessary because the installer needs to reformat and overwrite the hard drive.<br />
 This implies that this method would only work on a machine with large enough memory to fit the entire ISO image, and would not work on 1GB or smaller systems.</li>
</ul>

<ol start="4">
<li><p>Run <code>update-grub</code>.</p>

<p>This command generates <code>/boot/grub/grub.cfg</code> that is directly used by the GRUB bootloader.<br />
It would include the menuentry entered in the last step.</p></li>
<li><p>Open VNC window in SolusIO.</p></li>
<li><p>Type <code>reboot</code> in SSH session.</p></li>
<li><p>A blue screen titled "GNU GRUB" should appear in VNC, but only for 3 seconds.<br />
Quickly press the ⬇️ key, select "Ubuntu 20.04 ISO" menu, and press ENTER.</p>

<p><img src="https://yoursunny.com/t/2021/SolusIO-IPv6-ISO/grub.png" alt="GNU GRUB version 2.02, Debian GNU/Linux, Advanced Options for Debian GNU/Linux, Ubuntu 20.04 ISO" /></p></li>
<li><p>You might see a message:</p>

<blockquote><div>
  <p>error: no such module.</p>
  
  <p>Press any key to continue..._</p>
</div></blockquote>

<p>This is harmless, and you can press ENTER to bypass it.</p></li>
<li><p>A minute later, the Ubuntu installer should start, and display the "Please choose you preferred language" screen.</p></li>
</ol>

<h2>Part 2: Install Ubuntu from In-Memory ISO</h2>

<p>Now that we have the installer started, but we need to take care of one more detail before proceeding.</p>

<ol>
<li><p>On the very first "Please choose you preferred language" screen, press F2 key, which opens a shell.</p></li>
<li><p>Type the following commands:</p>

<pre><code>losetup -d /dev/loop0
umount /isodevice
</code></pre>

<p>These commands umount the ISO image, so that the same hard drive can be used as an installation target.</p></li>
<li><p>Type <code>exit</code> to return to the installer.</p></li>
<li><p>The installer would attempt to detect the network, and it will probably fail because the KVM server is IPv6-only and the network does not support IPv6 autoconfiguration.</p>

<p>Here I select "Continue without network", because the downloaded ISO image contains all the essential packages.</p>

<p><img src="https://yoursunny.com/t/2021/SolusIO-IPv6-ISO/network.png" alt="Network connections, Configure at least one interface this server can use to talk to other machines, and which preferably provides sufficient access for updates, Continue without network" /></p></li>
<li><p>The rest of installation process is same as any other Ubuntu Server installation.</p></li>
<li><p>The installed system will be without network configuration.<br />
It's necessary to login via VNC, add IP address and routes with <code>ip addr add</code> and <code>ip route add</code> commands, before I can SSH into the server and upload my <a rel="nofollow" href="https://yoursunny.com/t/2021/Virtualizor-VNC-netplan/">expertly written Netplan configuration</a>.</p></li>
</ol>

<h2>Common Errors</h2>

<h3>Temporary failure in name resolution</h3>

<p>When I'm downloading the official Ubuntu ISO image, I encountered this error:</p>

<pre><code># wget https://releases.ubuntu.com/focal/ubuntu-20.04.2-live-server-amd64.iso
--2021-04-28 01:48:26--  https://releases.ubuntu.com/focal/ubuntu-20.04.2-live-server-amd64.iso
Resolving releases.ubuntu.com (releases.ubuntu.com)... failed: Temporary failure in name resolution.
wget: unable to resolve host address ‘releases.ubuntu.com’
</code></pre>

<p>It turns out that the Debian 10 template from SolusIO has configured an IPv4 address as the DNS server, which does not work in an IPv6-only network:</p>

<pre><code># cat /etc/resolv.conf
nameserver 10.0.2.3
</code></pre>

<p>To resolve the error, configure an IPv6 DNS server such as <a rel="nofollow" href="https://one.one.one.one/dns/">Cloudflare DNS</a>, before downloading the ISO image:</p>

<pre><code>echo 'nameserver 2606:4700:4700::1111' &gt;/etc/resolv.conf
</code></pre>

<h3>/etc/grub.d/40_custom: menuentry: not found</h3>

<p>When I run <code>update-grub</code> command, I encountered this error:</p>

<pre><code># update-grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.19.0-16-amd64
Found initrd image: /boot/initrd.img-4.19.0-16-amd64
/etc/grub.d/40_custom: 2: /etc/grub.d/40_custom: menuentry: not found
done
</code></pre>

<p>This is because I mistakenly deleted the original content of <code>/etc/grub.d/40_custom</code> file, which starts with:</p>

<pre><code>#!/bin/sh
exec tail -n +3 $0
</code></pre>

<p>The <code>update-grub</code> command expects every file in <code>/etc/grub.d</code> directory to be a bash script.<br />
What the <code>exec tail</code> line does is that, it prints the content of this file starting from the third line, which happens to be our menuentry.<br />
If this line is deleted, bash would interpret <code>menuentry</code> as a command name, which does not exist, thus causing the error.</p>

<p>To resolve the error, put these two lines back to the top of <code>/etc/grub.d/40_custom</code>.</p>

<h3>Block probing did not discover any disks</h3>

<p>The Ubuntu installer fails with this message:</p>

<pre><code>Guided storage configuration

Block probing did not discover any disks. Unfortunately this means that
installation will not be possible.
</code></pre>

<p>This is because I did not run the commands to umount the ISO, so that the installer is unable to write to the hard drive that contains the ISO image.<br />
Apparently this is <a rel="nofollow" href="https://askubuntu.com/a/1305972">a decade old bug</a>.</p>

<p>To resolve the error, restart the server, enter the installer again, and remember to run the <code>umount</code> commands in a shell on the first screen.</p>

<h2>Final Words</h2>

<p>This article describes how to install Ubuntu 20.04 Server from the official ISO image on an IPv6-only KVM server managed by SolusIO platform.<br />
The steps are verified on <a rel="nofollow" href="https://hosterlabs.net/onlyv6/">Hosterlabs IPv6 only servers - IPv6 Plus plan</a>.</p>
]]>
        </description>
    </item>
    <item>
        <title>Using part of the IPv6 /64 block to provide public ips to wireguard clients</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/1848/using-part-of-the-ipv6-64-block-to-provide-public-ips-to-wireguard-clients</link>
        <pubDate>Tue, 29 Sep 2020 22:33:34 +0000</pubDate>
        <category>Technical</category>
        <dc:creator>jnraptor</dc:creator>
        <guid isPermaLink="false">1848@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Thanks to <a href="https://staging.lowendspirit.com/index.php?p=/profile/MaxKVM" rel="nofollow">@MaxKVM</a> for providing an awesome hosting service. I have a ticket with them that they and their upstream provider have not been able to resolve, and I would like to get a second opinion here.</p>

<p>I get a /64 block of IPv6 address of which 1 is allocated to the eth0 interface on my VPS. I then allocate a /112 block to Wireguard outside of the eth0 address, and statically assign IPv6 address from this block to wireguard clients.</p>

<p>MaxKVM does not do routed IPv6, but uses on-link IPv6, so I have to enable proxy_ndp on my VPS so that the eth0 interface would respond to neighbor solication (NS) messages with a neighbor advertisement (NA) for addresses in the /112 block.</p>

<pre><code>sudo sysctl -w net.ipv6.conf.all.proxy_ndp = 1
sudo ip -6 neigh add proxy 2402:xxxx:xxxx:xxxx::200:4 dev eth0
</code></pre>

<p>When I try to ping an external IPv6 address on my wireguard client, the upstream router of the VPS would then ask who has the 2402:xxxx:xxxx:xxxx::200:4 address so that it knows where to route the response to. The issue though is that the upstream router is sending NS messages with a fe80::xxxx:xxxx:xxxx:fdc0 (IPv6 EUI-64 address) and expecting a reply back to that fe80 address. See tcpdump output below.</p>

<pre><code>jon@max1 /etc: sudo tcpdump -i eth0 -v 'icmp6[icmp6type]=icmp6-neighborsolicit or icmp6[icmp6type]=icmp6-neighboradvert'
04:32:07.414482 IP6 (class 0xc0, hlim 255, next-header ICMPv6 (58) payload length: 32) fe80::xxxx:xxxx:xxxx:fdc0 &gt; ff02::1:ff00:4: [icmp6 sum ok] ICMP6, neighbor solicitation, length 32, who has 2402:xxxx:xxxx:xxxx::200:4
      source link-address option (1), length 8 (1): xx:xx:xx:xx:fd:c0
04:32:07.482930 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32) fe80::yyyy:yyyy:yyyy:2d51 &gt; fe80::xxxx:xxxx:xxxx:fdc0: [icmp6 sum ok] ICMP6, neighbor advertisement, length 32, tgt is 2402:xxxx:xxxx:xxxx::200:4, Flags [solicited]
      destination link-address option (2), length 8 (1): xx:xx:xx:xx:2d:51
04:32:07.550926 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32) fe80::yyyy:yyyy:yyyy:2d51 &gt; fe80::xxxx:xxxx:xxxx:fdc0: [icmp6 sum ok] ICMP6, neighbor solicitation, length 32, who has fe80::xxxx:xxx:xxxx:fdc0
      source link-address option (1), length 8 (1): xx:xx:xx:xx:2d:51
</code></pre>

<p>Since I enabled ndp proxying, my VPS tries to respond back to the router's fe80 address with a NA, but determines that it cannot, and sends a NS asking for how to route to that address. As a result, my wireguard client gets a host unreachable error because it gets no response.</p>

<p>However, if I ping the global IPv6 address that is the IPv6 gateway (which is also the router) from the wireguard client, I will see a NS coming from that global IPv6 address. And because it is the gateway, my VPS has no problems with responding with a NA and IPv6 starts working on my wireguard client.</p>

<pre><code>04:39:34.124527 IP6 (class 0xc0, hlim 255, next-header ICMPv6 (58) payload length: 32) 2402:zzzz:zzzz::1 &gt; ff02::1:ff00:4: [icmp6 sum ok] ICMP6, neighbor solicitation, length 32, who has 2402:xxxx:xxxx:xxxx::200:4
      source link-address option (1), length 8 (1): xx:xx:xx:xx:fd:c0
04:39:34.718943 IP6 (hlim 255, next-header ICMPv6 (58) payload length: 32) &lt;My Public IPv6 address&gt; &gt; 2402:zzzz:zzzz::1: [icmp6 sum ok] ICMP6, neighbor advertisement, length 32, tgt is 2402:xxxx:xxxx:xxxx::200:4, Flags [solicited]
      destination link-address option (2), length 8 (1): xx:xx:xx:xx:2d:51
</code></pre>

<p>Is it normal to block ICMPv6 access to the fe80 address of the upstream router?</p>

<p>For now though, I have switch to NATed IPv6 for my wireguard clients, but what a waste of the /64 block though.</p>

<p>Thanks<br />
Jonathan</p>
]]>
        </description>
    </item>
    <item>
        <title>IPv6 for lazy dummies</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/2664/ipv6-for-lazy-dummies</link>
        <pubDate>Wed, 17 Mar 2021 10:29:35 +0000</pubDate>
        <category>Technical</category>
        <dc:creator>flips</dc:creator>
        <guid isPermaLink="false">2664@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>I just realized it's been too long since I read about and learned IPv6 (and so much stuff has also changed since back then).</p>

<p>Got a new VPS, and correct config is something like:</p>

<pre><code>IP/subnet: 2b01:dead:beef:42::2/64
Gateway: 2b01:dead:beef::1
</code></pre>

<p>And this works fine. To me this looks like the gateway is on a different subnet (<code>/48</code>) than the interface.<br />
Anyone wants to shed any light on this?  <img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/grimace.png" title=":#" alt=":#" height="18" />  <img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/blush.png" title=":3" alt=":3" height="18" /></p>
]]>
        </description>
    </item>
    <item>
        <title>Enable IPv4 Access in EUserv IPv6-only VS2-free</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/2293/enable-ipv4-access-in-euserv-ipv6-only-vs2-free</link>
        <pubDate>Sun, 20 Dec 2020 17:20:37 +0000</pubDate>
        <category>Technical</category>
        <dc:creator>yoursunny</dc:creator>
        <guid isPermaLink="false">2293@/index.php?p=/discussions</guid>
        <description><![CDATA[<blockquote><div>
  <p>This post is originally published on yoursunny.com blog <a href="https://yoursunny.com/t/2020/EUserv-IPv4/" rel="nofollow">https://yoursunny.com/t/2020/EUserv-IPv4/</a></p>
</div></blockquote>

<p>EUserv is a virtual private server (VPS) provider in Germany.<br />
Notably, they offer a container-based Linux server, <a rel="nofollow" href="https://www.euserv.com/en/virtual-private-server/root-vserver/v2/vs2-free.php">VS2-free</a>, free of charge.<br />
VS2-free comes with one 1GHz CPU core, 1GB memory, and 10GB storage.<br />
Although I already have more than enough servers to play with, who doesn't like some more computing resources for free?</p>

<p>There's one catch: the VS2-free is IPv6-only.<br />
It neither has a public IPv4 address, nor offers NAT-based IPv4 access.<br />
All you can have is a single /128 IPv6 address.</p>

<pre><code>$ ip addr
1: lo: &lt;LOOPBACK,UP,LOWER_UP&gt; mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
546: eth0@if547: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether b2:77:4b:c0:eb:0b brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet6 2001:db8:6:1::6dae/128 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::5ed4:d66f:bd01:6936/64 scope link
       valid_lft forever preferred_lft forever
</code></pre>

<p>If I attempt to access an IPv4-only destination, a "Network is unreachable" error appears:</p>

<pre><code>$ host lgger.nexusbytes.com
lgger.nexusbytes.com has address 46.4.199.225
$ ping -n -c 4 lgger.nexusbytes.com
connect: Network is unreachable
</code></pre>

<p>Not having IPv4 access severely restricts the usefulness of the VS2-free, because I would be unable to access many external resources that are not yet IPv6-enabled.<br />
Is there a way to get <em>some</em> IPv4 access in the IPv6-only VS2-free vServer?</p>

<h2>NAT64</h2>

<p><a rel="nofollow" href="https://tools.ietf.org/html/rfc6146">Stateful NAT64 translation</a> is a network protocol that allows IPv6-only clients to contact IPv4 servers using unicast UDP, TCP, or ICMP.<br />
It relies on a dual-stack server, known as a <strong>NAT64 translator</strong>, to proxy packets between IPv6 and IPv4 networks.</p>

<p>There are a number of <a rel="nofollow" href="https://nat64.xyz/">public NAT64 services</a> in Europe that would enable IPv4 access from my server.<br />
To use NAT64, all I need to do is changing the DNS settings in my server:</p>

<pre><code>$ sudoedit /etc/resolvconf/resolv.conf.d/base
    nameserver 2a01:4f9:c010:3f02::1
    nameserver 2a00:1098:2c::1
    nameserver 2a00:1098:2b::1

$ sudo resolvconf -u
</code></pre>

<p>Note that on a Debian 10 system with <code>resolveconf</code> package, the proper way to change DNS servers is editing <code>/etc/resolvconf/resolv.conf.d/base</code> and then executing <code>resolvconf -u</code> to regenerate <code>/etc/resolv.conf</code>.<br />
If you modify <code>/etc/resolv.conf</code> directly, the changes will be overwritten during the next reboot.</p>

<p>After making the changing, DNS responses for IPv4-only destinations would contain additional IPv6 addresses that belong to the NAT64 translator, which would facilitate the connection:</p>

<pre><code>$ host lgger.nexusbytes.com
lgger.nexusbytes.com has address 46.4.199.225
lgger.nexusbytes.com has IPv6 address 2a00:1098:2c::1:2e04:c7e1
lgger.nexusbytes.com has IPv6 address 2a01:4f9:c010:3f02:64:0:2e04:c7e1
lgger.nexusbytes.com has IPv6 address 2a00:1098:2b::2e04:c7e1

$ ping -n -c 4 lgger.nexusbytes.com
PING lgger.nexusbytes.com(2a00:1098:2c::1:2e04:c7e1) 56 data bytes
64 bytes from 2a00:1098:2c::1:2e04:c7e1: icmp_seq=1 ttl=41 time=39.9 ms
64 bytes from 2a00:1098:2c::1:2e04:c7e1: icmp_seq=2 ttl=41 time=39.7 ms
64 bytes from 2a00:1098:2c::1:2e04:c7e1: icmp_seq=3 ttl=41 time=39.6 ms
64 bytes from 2a00:1098:2c::1:2e04:c7e1: icmp_seq=4 ttl=41 time=39.8 ms
</code></pre>

<p>It is easy to gain IPv4 access on the EUserv VS2-free container by using a public NAT64 service, but there are several drawbacks:</p>

<ul>
<li><p>The IPv4 addresses of public NAT64 services are shared by many users.<br />
If any other user misbehaves, the shared IPv4 address of the NAT64 translator could be blocklisted by the destination IPv4 service.</p></li>
<li><p>The NAT64 translator could apply rate limits if it gets busy.</p></li>
<li><p>While we can contact an IPv4-only destination by its hostname, it is still not possible to contact an IPv4 address:</p>

<pre><code>$ ping 8.8.8.8
connect: Network is unreachable
</code></pre></li>
</ul>

<h2>IPv4 NAT over VXLAN</h2>

<p>To get true IPv4 access on an IPv6-only server, we need to create a tunnel between the IPv6-only server and a dual-stack server, and then configure Network Address Translation (NAT) on the dual stack server.<br />
Many people would think about using a VPN software, such as OpenVPN or WireGuard.<br />
However, VPN is overkill, because there is a lighter weight solution: VXLAN.</p>

<p><a rel="nofollow" href="https://tools.ietf.org/html/rfc7348">VXLAN</a>, or Virtual eXtensible Local Area Network, is a framework for overlaying virtualized layer 2 networks over layer 3 networks.<br />
In our case, I can create a virtualized Ethernet (layer 2) network over an IPv6 (layer 3) network.<br />
Then, I can assign IPv4 addresses to the virtual Ethernet adapters, in order to give IPv4 access to the previously IPv6-only VS2-free vServer.</p>

<p>I have a small dual-stack server in Germany, offered by <a rel="nofollow" href="https://hosting.gullo.me/">Gullo's Hosting</a>.<br />
It is an OpenVZ 7 container.<br />
It runs Debian 10, the same operating system as my VS2-free.<br />
I will be using this server to share IPv4 to the VS2-free.</p>

<p>In the examples below:</p>

<ul>
<li><code>2001:db8:473a:723d:276e::2</code> is the public IPv6 address of the dual-stack server.</li>
<li><code>2001:db8:6:1::6dae</code> is the public IPv6 address of the IPv6-only server.</li>
<li><code>192.0.2.1</code> is the public IPv4 address of the dual-stack server.</li>
</ul>

<p>After reverting the DNS changes from the previous section, I execute the following commands on the EUserv vServer to setup a VXLAN tunnel:</p>

<pre><code>sudo ip link add vx84 type vxlan id 0 remote 2001:db8:473a:723d:276e::2 local 2001:db8:6:1::6dae dstport 4789
sudo ip link set vx84 mtu 1420
sudo ip link set vx84 up
sudo ip addr add 192.168.84.2/24 dev vx84
sudo ip route add 0.0.0.0/0 via 192.168.84.1
</code></pre>

<p>Note that I reduced the MTU of the VXLAN tunnel interface to 1420 from the default 1500.<br />
This is necessary to accommodate the overhead of VXLAN headers, so that the encapsulated IPv6 packets can fit into the normal MTU.</p>

<p>On the dual-stack server, I execute these commands to setup its end of the tunnel and enable NAT:</p>

<pre><code>sudo ip link add vx84 type vxlan id 0 remote 2001:db8:6:1::6dae local 2001:db8:473a:723d:276e::2 dstport 4789
sudo ip link set vx84 mtu 1420
sudo ip link set vx84 up
sudo ip addr add 192.168.84.1/24 dev vx84
sudo iptables-legacy -t nat -A POSTROUTING -s 192.168.84.0/24 ! -d 192.168.84.0/24 -j SNAT --to 192.0.2.1
</code></pre>

<p>It's worth noting that the command for enabling NAT is <em>iptables-legacy</em> instead of <em>iptables</em>.<br />
Apparently, there are <a rel="nofollow" href="https://developers.redhat.com/blog/2020/08/18/iptables-the-two-variants-and-their-relationship-with-nftables/">two variants of iptables</a> that access different kernel APIs.<br />
Although both commands would succeed, only <em>iptables-legacy</em> is effective in an OpenVZ 7 container.<br />
This had me scratching my head for a while.</p>

<p>After these setup, I'm able to access IPv4 from the IPv6-only server:</p>

<pre><code>$ traceroute -n -q1 lgger.nexusbytes.com
traceroute to lgger.nexusbytes.com (46.4.199.225), 30 hops max, 60 byte packets
 1  192.168.84.1  23.566 ms
 2  *
 3  213.239.229.89  34.058 ms
 4  213.239.229.130  23.615 ms
 5  94.130.138.54  24.077 ms
 6  46.4.199.225  23.955 ms
</code></pre>

<p>In Wireshark, these packets would look like this:</p>

<pre><code>Frame 5: 146 bytes on wire (1168 bits), 146 bytes captured (1168 bits)
Linux cooked capture v1
Internet Protocol Version 6, Src: 2001:db8:6:1::6dae, Dst: 2001:db8:473a:723d:276e::2
User Datagram Protocol, Src Port: 53037, Dst Port: 4789
Virtual eXtensible Local Area Network
Ethernet II, Src: b6:ab:7c:af:51:d1 (b6:ab:7c:af:51:d1), Dst: be:ce:c9:cf:a7:f3 (be:ce:c9:cf:a7:f3)
Internet Protocol Version 4, Src: 192.168.84.2, Dst: 46.4.199.225
User Datagram Protocol, Src Port: 50047, Dst Port: 33439
Data (32 bytes)
</code></pre>

<h2>Make Them Persistent</h2>

<p>Effect of <code>ip</code> commands will be lost after a reboot.<br />
Normally the VXLAN tunnel should be written into the <em>ifupdown</em> configuration file, but as I <a rel="nofollow" href="https://yoursunny.com/t/2020/preferred-lft-vz7/">discovered earlier</a>, OpenVZ 7 would revert any modifications to the <code>/etc/network/interfaces</code> file.<br />
Thus, I have to apply these changes dynamically using a systemd service.</p>

<p>The systemd service unit for the IPv6-only server is:</p>

<pre><code>[Unit]
Description=VXLAN tunnel to vps9
After=network-online.target
Wants=network-online.target

[Service]
ExecStartPre=ip link add vx84 type vxlan id 0 remote 2001:db8:473a:723d:276e::2 local 2001:db8:6:1::6dae dstport 4789
ExecStartPre=ip link set vx84 mtu 1420
ExecStartPre=ip link set vx84 up
ExecStartPre=ip addr add 192.168.84.2/24 dev vx84
ExecStartPre=ip route add 0.0.0.0/0 via 192.168.84.1
ExecStart=true
RemainAfterExit=yes
ExecStopPost=ip link del vx84

[Install]
WantedBy=multi-user.target
</code></pre>

<p>The systemd service unit for the dual-stack server is:</p>

<pre><code>[Unit]
Description=VXLAN tunnel to vps2
After=network-online.target
Wants=network-online.target

[Service]
ExecStartPre=ip link add vx84 type vxlan id 0 remote 2001:db8:6:1::6dae local 2001:db8:473a:723d:276e::2 dstport 4789
ExecStartPre=ip link set vx84 mtu 1420
ExecStartPre=ip link set vx84 up
ExecStartPre=ip addr add 192.168.84.1/24 dev vx84
ExecStartPre=iptables-legacy -t nat -A POSTROUTING -s 192.168.84.0/24 ! -d 192.168.84.0/24 -j SNAT --to 192.0.2.1
ExecStart=true
RemainAfterExit=yes
ExecStopPost=iptables-legacy -t nat -D POSTROUTING -s 192.168.84.0/24 ! -d 192.168.84.0/24 -j SNAT --to 192.0.2.1
ExecStopPost=ip link del vx84

[Install]
WantedBy=multi-user.target
</code></pre>

<p>On both servers, this service unit file should be uploaded to <code>/etc/systemd/system/vx84.service</code>.<br />
Then, I can enable the service unit with these commands:</p>

<pre><code>sudo systemctl daemon-reload
sudo systemctl enable vx84
</code></pre>

<p>They will take effect after a reboot:</p>

<pre><code>$ ip addr show vx84
4: vx84: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000
    link/ether f2:4c:5d:6c:4b:25 brd ff:ff:ff:ff:ff:ff
    inet 192.168.84.2/24 scope global vx84
       valid_lft forever preferred_lft forever
    inet6 fe80::f04c:5dff:fe6c:4b25/64 scope link
       valid_lft forever preferred_lft forever

$ ping -c 4 1.1.1.1
PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
64 bytes from 1.1.1.1: icmp_seq=1 ttl=57 time=28.9 ms
64 bytes from 1.1.1.1: icmp_seq=2 ttl=57 time=28.7 ms
64 bytes from 1.1.1.1: icmp_seq=3 ttl=57 time=28.9 ms
64 bytes from 1.1.1.1: icmp_seq=4 ttl=57 time=28.10 ms
</code></pre>

<h2>Conclusion</h2>

<p>This article describes two methods of gaining IPv4 access on an IPv6-only server such as the EUserv VS2-free.</p>

<ul>
<li>Use a public NAT64 translator.</li>
<li>Establish a VXLAN tunnel to a dual-stack server, and then configure IPv4 addresses and NAT on the virtual Ethernet interfaces.</li>
</ul>

<p>To workaround OpenVZ 7 limitation of not being able to modify <code>/etc/network/interfaces</code>, we use a systemd service unit to dynamically establish and teardown the VXLAN tunnel and related configuration.</p>
]]>
        </description>
    </item>
    <item>
        <title>How to Select Default IPv6 Source Address for Outbound Traffic in OpenVZ 7</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/2249/how-to-select-default-ipv6-source-address-for-outbound-traffic-in-openvz-7</link>
        <pubDate>Sun, 13 Dec 2020 23:45:31 +0000</pubDate>
        <category>Technical</category>
        <dc:creator>yoursunny</dc:creator>
        <guid isPermaLink="false">2249@/index.php?p=/discussions</guid>
        <description><![CDATA[<blockquote><div>
  <p>This post is originally published on yoursunny.com blog <a href="https://yoursunny.com/t/2020/preferred-lft-vz7/" rel="nofollow">https://yoursunny.com/t/2020/preferred-lft-vz7/</a></p>
</div></blockquote>

<p>I bought a few Virtual Private Servers (VPS) on Black Friday, and have been busy setting them up.<br />
Nowadays, most VPS comes with an IPv6 <em>subnet</em> that contains millions of possible addresses.<br />
Initially, only one IPv6 address is assigned to the server, but the user can assign additional addresses as desired.<br />
Given that I plan to run multiple services within a server, I added a few more IPv6 addresses so that each service can have a unique IPv6 address.</p>

<p>One of my servers is using OpenVZ 7 virtualization technology, in which I installed Debian 10 operating system.<br />
Commonly, OpenVZ 7 uses <a rel="nofollow" href="https://wiki.openvz.org/Virtual_network_device">virtual network device (<em>venet</em>)</a> that does not have a MAC address.<br />
<em>venet</em> devices are <a rel="nofollow" href="https://wiki.openvz.org/IPv6">not fully IPv6 compliant</a>, but still works if you statically assign IPv6 addresses.<br />
Moreover, every IP address used in a container must be configured from the host node, because <em>venet</em> would drop ip-packets from the container with a source address, and in the container with the destination address, which is not corresponding to an ip-address of the container.<br />
Therefore, I must use the VPS control panel, in this case SolusVM, to assign IPv6 addresses to my server:</p>

<p><img src="https://yoursunny.com/t/2020/preferred-lft-vz7/SolusVM-IPv6.png" alt="IPv6 Subnet management in SolusVM" /></p>

<p>In the <em>Add IP</em> section, the IPv6 subnet prefix <code>2001:db8:f1c1:8454:0964:</code> is already shown.<br />
Notice that I am putting a colon (<code>:</code>) in front of the suffix <code>beef</code>, so that they concatenate to the full address <code>2001:db8:f1c1:8454:0964::beef</code>.<br />
Forgetting this colon would cause "Invalid Entry" error.</p>

<p>After making this change in the SolusVM control panel, the <code>/etc/network/interface</code> file on my server is updated automatically:</p>

<pre><code># This configuration file is auto-generated.
# WARNING: Do not edit this file, otherwise your changes will be lost.
# Please edit template /etc/network/interfaces.template instead.
auto lo
iface lo inet loopback
# Auto generated venet0 interfaces
auto venet0
iface venet0 inet static
        address 127.0.0.1
        netmask 255.255.255.255
        broadcast 0.0.0.0
        up route add default dev venet0
iface venet0 inet6 static
        address ::2
        netmask 128
        up ip -6 r a default dev venet0
        up ip addr add 2001:db8:f1c1:8454:0964::2/80 dev venet0
        up ip addr add 2001:db8:f1c1:8454:0964::beef/80 dev venet0
auto venet0:0
iface venet0:0 inet static
        address 10.10.23.159
        netmask 255.255.255.255
</code></pre>

<p>I'm also seeing two IPv6 addresses:</p>

<pre><code>$ ip addr
1: lo: &lt;LOOPBACK,UP,LOWER_UP&gt; mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: venet0: &lt;BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP&gt; mtu 1500 qdisc noqueue state UNKNOWN group default
    link/void
    inet 127.0.0.1/32 scope host venet0
       valid_lft forever preferred_lft forever
    inet 192.0.2.30/32 brd 192.0.2.30 scope global venet0:0
       valid_lft forever preferred_lft forever
    inet6 2001:db8:f1c1:8454:0964::beef/80 scope global
       valid_lft forever preferred_lft forever
    inet6 2001:db8:f1c1:8454:0964::2/80 scope global
       valid_lft forever preferred_lft forever
    inet6 ::2/128 scope global
       valid_lft forever preferred_lft forever
</code></pre>

<p>I intend to host my secret beef recipes on its unique IPv6 address <code>2001:db8:f1c1:8454:0964::beef</code>, and use the other address <code>2001:db8:f1c1:8454:0964::2</code> for outbound traffic such as pings and traceroutes.<br />
However, I noticed that the wrong address is being selected for outgoing packets:</p>

<pre><code>$ ping 2001:db8:9f16:8fc7::9

$ sudo tcpdump -n icmp6
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens3, link-type EN10MB (Ethernet), capture size 262144 bytes
10:25:18.264905 IP6 2001:db8:f1c1:8454:0964::beef &gt; 2001:db8:9f16:8fc7::9: ICMP6, echo request, seq 1, length 64
10:25:18.265014 IP6 2001:db8:9f16:8fc7::9 &gt; 2001:db8:f1c1:8454:0964::beef: ICMP6, echo reply, seq 1, length 64
10:25:19.264939 IP6 2001:db8:f1c1:8454:0964::beef &gt; 2001:db8:9f16:8fc7::9: ICMP6, echo request, seq 2, length 64
10:25:19.265013 IP6 2001:db8:9f16:8fc7::9 &gt; 2001:db8:f1c1:8454:0964::beef: ICMP6, echo reply, seq 2, length 64
</code></pre>

<p>I started searching for a solution, and learned that:</p>

<ul>
<li><a rel="nofollow" href="https://tools.ietf.org/html/rfc3484">Default Address Selection for Internet Protocol version 6 (IPv6)</a> is a very complicated topic.</li>
<li><p>An application can explicitly specify a source address.<br />
For example, I can invoke <code>ping -I 2001:db8:f1c1:8454:0964::2 2001:db8:9f16:8fc7::9</code> to use the desired source address.</p></li>
<li><p>Each local IPv6 address can be either "preferred" or "deprecated".<br />
If the application does not specify a source address, the system would prefer to use a "preferred" address instead of a "deprecated" address.</p></li>
</ul>

<p>As shown in the <code>ip addr</code> output above, currently both addresses are "preferred" on my server.<br />
This means, both addresses are equally possible of being used as the default source address.<br />
If I can make <code>2001:db8:f1c1:8454:0964::2</code> "preferred" and all other addresses "deprecated", I would achieve my goal of making <code>2001:db8:f1c1:8454:0964::2</code> the default source address for outbound traffic.</p>

<p>How can I set an IPv6 address as "deprecated"?<br />
After some digging, I found that it is controlled by the <code>preferred_lft</code> (preferred lifetime) attribute.<br />
This attribute indicates the remaining time an IP address is to remain "preferred".<br />
Unless it is set to "forever", <code>preferred_lft</code> counts down every second, and the IP address becomes "deprecated" when it reaches zero.<br />
If the IP address was added with <code>preferred_lft</code> set to zero, it would be "deprecated" since the beginning.</p>

<p>The command to change <code>preferred_lft</code> of an existing IPv6 address is:</p>

<pre><code>sudo ip addr change 2001:db8:f1c1:8454:0964::beef/80 dev venet0 preferred_lft 0
</code></pre>

<p>This change takes effect immediately, and outgoing packets start using <code>2001:db8:f1c1:8454:0964::2</code> as source address, as I wanted.<br />
However, after a reboot, both IPv6 addresses would become "preferred" again.</p>

<p>As we have seen, the <code>/etc/network/interfaces</code> file is adding IPv6 addresses in a <a rel="nofollow" href="https://manpages.debian.org/stretch/ifupdown/interfaces.5.en.html"><strong>post-up</strong> command</a> that runs after <code>ifupdown</code> package brings the interface up.<br />
Can we change this command and set <code>preferred_lft</code> to zero?</p>

<p>So I modified the <code>/etc/network/interfaces</code> file, changing that line to:</p>

<pre><code>up ip addr add 2001:db8:f1c1:8454:0964::beef/80 dev venet0 preferred_lft 0
</code></pre>

<p>However, modifying <code>/etc/network/interfaces</code> in an OpenVZ 7 container would not work.<br />
Although I can see the modification right away, after a reboot, the file is automatically restored to the default state, reverting any changes.</p>

<p>After poking around for a while, I figured out the solution: create a systemd service to change the <code>preferred_lft</code> attribute.<br />
The following commands will do the magic:</p>

<pre><code>sudo apt install -y jq
sudo mkdir -p /usr/local/bin

sudo tee /usr/local/bin/network-preferredlft.sh &gt; /dev/null &lt;&lt;'EOT'
#!/bin/bash
set -e
set -o pipefail

ip -j addr show dev $IFACE \
  | jq -r '
    .[] | select(.addr_info) | .addr_info[] |
    select(.family=="inet6" and .scope=="global") |
    select(.local | (endswith(":1") or endswith(":2")) | not) |
    "ip addr change "+.local+"/"+(.prefixlen|tostring)+" dev "+env.IFACE+" preferred_lft 0"' \
  | sh
EOT

sudo chmod +x /usr/local/bin/network-preferredlft.sh

sudo tee /etc/systemd/system/network-preferredlft.service &gt; /dev/null &lt;&lt;'EOT'
[Unit]
Description=Change preferred_lft
Documentation=https://yoursunny.com/t/2020/preferred-lft-vz7/
After=network-online.target
Wants=network-online.target

[Service]
Environment="IFACE=venet0"
Type=oneshot
ExecStart=/usr/local/bin/network-preferredlft.sh

[Install]
WantedBy=multi-user.target
EOT

sudo systemctl daemon-reload
sudo systemctl enable network-preferredlft
</code></pre>

<p>The script <code>/usr/local/bin/network-preferredlft.sh</code> retrieves a list of IP addresses assigned to the network interface specified by the environment variable <code>$IFACE</code>.<br />
For each global-scope IPv6 address that does not end with <code>:1</code> or <code>:2</code>, the <code>preferred_lft</code> attribute is changed to zero.</p>

<p>After executing the above command and rebooting, I can see that the IPv6 address <code>2001:db8:f1c1:8454:0964::beef</code> is correctly marked as "deprecated" and no longer selected as the default source address.<br />
Now I can securely host my secret beef recipes on <code>2001:db8:f1c1:8454:0964::beef</code> without worrying about others discovering this "deprecated" IPv6 address through my outbound network traffic.</p>

<pre><code>$ ip addr show dev venet0
2: venet0: &lt;BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP&gt; mtu 1500 qdisc noqueue state UNKNOWN group default
    link/void
    inet 127.0.0.1/32 scope host venet0
       valid_lft forever preferred_lft forever
    inet 192.0.2.30/32 brd 192.0.2.30 scope global venet0:0
       valid_lft forever preferred_lft forever
    inet6 2001:db8:f1c1:8454:0964::beef/80 scope global deprecated
       valid_lft forever preferred_lft 0sec
    inet6 2001:db8:f1c1:8454:0964::2/80 scope global
       valid_lft forever preferred_lft forever
    inet6 ::2/128 scope global
       valid_lft forever preferred_lft forever

$ ping 2001:db8:9f16:8fc7::9

$ sudo tcpdump -n icmp6
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens3, link-type EN10MB (Ethernet), capture size 262144 bytes
11:03:40.185496 IP6 2001:db8:f1c1:8454:0964::2 &gt; 2001:db8:9f16:8fc7::9: ICMP6, echo request, seq 1, length 64
11:03:40.185598 IP6 2001:db8:9f16:8fc7::9 &gt; 2001:db8:f1c1:8454:0964::2: ICMP6, echo reply, seq 1, length 64
11:03:41.187229 IP6 2001:db8:f1c1:8454:0964::2 &gt; 2001:db8:9f16:8fc7::9: ICMP6, echo request, seq 2, length 64
11:03:41.187273 IP6 2001:db8:9f16:8fc7::9 &gt; 2001:db8:f1c1:8454:0964::2: ICMP6, echo reply, seq 2, length 64
</code></pre>

<p>This article explained how to change default IPv6 source address selection by marking an IPv6 address "deprecated" via a systemd service that invokes <code>ip addr</code> command after ifupdown brings up the network interface.<br />
The described technique works in OpenVZ 7 and Debian 10, and has been tested in a VPS provided by Gullo's Hosting.<br />
If you are using KVM and Ubuntu 20.04, check out <a rel="nofollow" href="https://yoursunny.com/t/2020/preferred-lft-netplan/">How to Select Default IPv6 Source Address for Outbound Traffic with Netplan</a>.</p>
]]>
        </description>
    </item>
    <item>
        <title>How to Select Default IPv6 Source Address for Outbound Traffic with Netplan</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/2219/how-to-select-default-ipv6-source-address-for-outbound-traffic-with-netplan</link>
        <pubDate>Mon, 07 Dec 2020 02:20:03 +0000</pubDate>
        <category>Technical</category>
        <dc:creator>yoursunny</dc:creator>
        <guid isPermaLink="false">2219@/index.php?p=/discussions</guid>
        <description><![CDATA[<blockquote><div>
  <p>This post is originally published on yoursunny.com blog <a href="https://yoursunny.com/t/2020/preferred-lft-netplan/" rel="nofollow">https://yoursunny.com/t/2020/preferred-lft-netplan/</a></p>
</div></blockquote>

<p>I bought a few Virtual Private Servers (VPS) on Black Friday, and have been busy setting them up.<br />
Nowadays, most VPS comes with an IPv6 <em>subnet</em> that contains millions of possible addresses.<br />
Initially, only one IPv6 address is assigned to the server, but the user can assign additional addresses as desired.<br />
Given that I plan to run multiple services within a server, I added a few more IPv6 addresses so that each service can have a unique IPv6 address.</p>

<p>One of my servers is using KVM virtualization technology, in which I installed Ubuntu 20.04 operating system manually from an ISO image.<br />
Unlike a template-based installation, an ISO-installed Ubuntu 20.04 system manages its networks using <a rel="nofollow" href="https://netplan.io/">Netplan</a>, a backend-agnostic network configuration utility that generates network configuration from YAML files.<br />
Most VPS control panels, including SolusVM and Virtualizer, are unable to generate the YAML files needed by Netplan.<br />
IPv4 works out of box via DHCP, but IPv6 has to be configured manually.<br />
To assign two IPv6 addresses to my server, I need to write the following in <code>/etc/netplan/01-netcfg.yaml</code>:</p>

<pre><code>network:
  version: 2
  ethernets:
    ens3:
      dhcp4: true
      addresses:
        - 2001:db8:30fa:5877::1/64
        - 2001:db8:30fa:5877::beef/64
      routes:
        - to: ::/0
          via: 2001:db8:30fa::1
          on-link: true
      nameservers:
        addresses:
        - 2001:4860:4860::8888
        - 2606:4700:4700::1111
</code></pre>

<p>I intend to host my secret beef recipes on its unique IPv6 address <code>2001:db8:30fa:5877::beef</code>, and use the other address <code>2001:db8:30fa:5877::1</code> for outbound traffic such as pings and traceroutes.<br />
However, I noticed that the wrong address is being selected for outgoing packets:</p>

<pre><code>$ ping 2001:db8:57eb:8479::2

$ sudo tcpdump -n icmp6
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on venet0, link-type LINUX_SLL (Linux cooked), capture size 262144 bytes
00:44:48.704099 IP6 2001:db8:30fa:5877::beef &gt; 2001:db8:57eb:8479::2: ICMP6, echo request, seq 1, length 64
00:44:48.704188 IP6 2001:db8:57eb:8479::2 &gt; 2001:db8:30fa:5877::beef: ICMP6, echo reply, seq 1, length 64
00:44:49.704011 IP6 2001:db8:30fa:5877::beef &gt; 2001:db8:57eb:8479::2: ICMP6, echo request, seq 2, length 64
00:44:49.704099 IP6 2001:db8:57eb:8479::2 &gt; 2001:db8:30fa:5877::beef: ICMP6, echo reply, seq 2, length 64
</code></pre>

<p>I started searching for a solution, and learned that:</p>

<ul>
<li><a rel="nofollow" href="https://tools.ietf.org/html/rfc3484">Default Address Selection for Internet Protocol version 6 (IPv6)</a> is a very complicated topic.</li>
<li><p>An application can explicitly specify a source address.<br />
For example, I can invoke <code>ping -I 2001:db8:30fa:5877::1 2001:db8:57eb:8479::2</code> to use the desired source address.</p></li>
<li><p>Each local IPv6 address can be either "preferred" or "deprecated".<br />
If the application does not specify a source address, the system would prefer to use a "preferred" address instead of a "deprecated" address.</p></li>
</ul>

<p>Currently, both addresses are "preferred" on my server:</p>

<pre><code>$ ip addr show dev ens3
2: ens3: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 92:b6:ab:eb:04:00 brd ff:ff:ff:ff:ff:ff
    inet 192.0.2.30/24 brd 192.0.2.255 scope global dynamic ens3
       valid_lft 21599977sec preferred_lft 21599977sec
    inet6 2001:db8:30fa:5877::1/64 scope global
       valid_lft forever preferred_lft forever
    inet6 2001:db8:30fa:5877::beef/64 scope global
       valid_lft forever preferred_lft forever
</code></pre>

<p>This means, both addresses are equally possible of being used as the default source address.<br />
If I can make <code>2001:db8:30fa:5877::1</code> "preferred" and all other addresses "deprecated", I would achieve my goal of making <code>2001:db8:30fa:5877::1</code> the default source address for outbound traffic.</p>

<p>How can I set an IPv6 address as "deprecated"?<br />
After some digging, I found that it is controlled by the <code>preferred_lft</code> (preferred lifetime) attribute.<br />
This attribute indicates the remaining time an IP address is to remain "preferred".<br />
Unless it is set to "forever", <code>preferred_lft</code> counts down every second, and the IP address becomes "deprecated" when it reaches zero.<br />
If the IP address was added with <code>preferred_lft</code> set to zero, it would be "deprecated" since the beginning.</p>

<p>Netplan gained support for <code>preferred_lft</code> setting <a rel="nofollow" href="https://bugs.launchpad.net/netplan/+bug/1803203">very recently</a> since version <code>0.100-0ubuntu4</code>.<br />
The syntax to specify <code>preferred_lft</code> of an IPv6 address is:</p>

<pre><code>addresses:
  - 2001:db8:30fa:5877::1/64
  - 2001:db8:30fa:5877::beef/64:
      lifetime: 0
</code></pre>

<p>Notice that there is a colon (<code>:</code>) after the IPv6 address <code>2001:db8:30fa:5877::beef/64</code>, because it is syntactically a map key instead of a string value.<br />
The equivalent structure in JSON looks like:</p>

<pre><code>{
  "addresses": [
    "2001:db8:30fa:5877::1/64",
    {
      "2001:db8:30fa:5877::beef/64": {
        "lifetime": 0
      }
    }
  ]
}
</code></pre>

<p>After applying this change, the IPv6 address <code>2001:db8:30fa:5877::beef</code> is correctly marked as "deprecated" and no longer selected as the default source address.<br />
Now I can securely host my secret beef recipes on <code>2001:db8:30fa:5877::beef</code> without worrying about others discovering this "deprecated" IPv6 address through my outbound network traffic.</p>

<pre><code>$ sudo netplan apply

$ ip addr show dev ens3
2: ens3: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 92:b6:ab:eb:04:00 brd ff:ff:ff:ff:ff:ff
    inet 192.0.2.30/24 brd 192.0.2.255 scope global dynamic ens3
       valid_lft 21598263sec preferred_lft 21598263sec
    inet6 2001:db8:30fa:5877::1/64 scope global
       valid_lft forever preferred_lft forever
    inet6 2001:db8:30fa:5877::beef/64 scope global deprecated
       valid_lft forever preferred_lft 0sec

$ ping 2001:db8:57eb:8479::2

$ sudo tcpdump -n icmp6
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on venet0, link-type LINUX_SLL (Linux cooked), capture size 262144 bytes
00:44:48.704099 IP6 2001:db8:30fa:5877::1 &gt; 2001:db8:57eb:8479::2: ICMP6, echo request, seq 1, length 64
00:44:48.704188 IP6 2001:db8:57eb:8479::2 &gt; 2001:db8:30fa:5877::1: ICMP6, echo reply, seq 1, length 64
00:44:49.704011 IP6 2001:db8:30fa:5877::1 &gt; 2001:db8:57eb:8479::2: ICMP6, echo request, seq 2, length 64
00:44:49.704099 IP6 2001:db8:57eb:8479::2 &gt; 2001:db8:30fa:5877::1: ICMP6, echo reply, seq 2, length 64
</code></pre>

<p>This article explained how to change default IPv6 source address selection by marking an IPv6 address "deprecated" via Netplan.<br />
The described technique works in KVM and Ubuntu 20.04, and has been tested in a VPS provided by Spartan Host.<br />
If you are using a OpenVZ 7 container, check out <a rel="nofollow" href="https://yoursunny.com/t/2020/preferred-lft-vz7/">How to Select Default IPv6 Source Address for Outbound Traffic in OpenVZ 7</a>.</p>
]]>
        </description>
    </item>
    <item>
        <title>THE AIO IP Related Thread. (IPv4 + IPv6 + ASN) (Only Providers and LIRs are allowed to post offers)</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/2061/the-aio-ip-related-thread-ipv4-ipv6-asn-only-providers-and-lirs-are-allowed-to-post-offers</link>
        <pubDate>Thu, 12 Nov 2020 12:44:08 +0000</pubDate>
        <category>General</category>
        <dc:creator>SGraf</dc:creator>
        <guid isPermaLink="false">2061@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Hi everyone!</p>

<p>By now there are a few Providers and LIRs that rent out &amp; sell resources. <br />
All future IP/ASN related commercial requests or questions are to be posted in this thread.</p>

<p>Only members with Provider or LIR tags are allowed to post offers in this thread.<br />
Requests can be placed by anyone.</p>

<p>Good Luck <img src="https://staging.lowendspirit.com/plugins/emojiextender/emoji/twitter/smile.png" title=":)" alt=":)" height="18" /></p>
]]>
        </description>
    </item>
    <item>
        <title>HE Tunnel Broker and OpenVZ Container with inception hosting</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/1466/he-tunnel-broker-and-openvz-container-with-inception-hosting</link>
        <pubDate>Thu, 16 Jul 2020 21:16:54 +0000</pubDate>
        <category>Technical</category>
        <dc:creator>bolto90</dc:creator>
        <guid isPermaLink="false">1466@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>when i try to bring up the ipv6 tunnel interface I get the following error message has anyone else tried this.</p>

<p>add tunnel "sit0" failed: No such device</p>
]]>
        </description>
    </item>
    <item>
        <title>Cloudflare IPv4 to IPv6 not working?</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/1269/cloudflare-ipv4-to-ipv6-not-working</link>
        <pubDate>Thu, 18 Jun 2020 03:42:48 +0000</pubDate>
        <category>Help</category>
        <dc:creator>bunsenb</dc:creator>
        <guid isPermaLink="false">1269@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Hi all, I just got a new NAT VPS and tried to set it up with Cloudflare and I am unable to access the nginx page that I have configured through Cloudflare (proxied) on my home (IPv4) or LTE (IPv4/IPv6) connection. Everything works fine if I turn off the Cloudflare proxy feature accessing the domain from my LTE connection. This worked with no issues when I was running mikho's NAT VPS a year or two but Cloudflare has changed their UI since then for DNS.</p>

<p>Is there something obvious I'm overlooking? The AAAA record is configured fine, it's just the IPv4-&gt;IPv6 proxy on their end that isn't working correctly.</p>
]]>
        </description>
    </item>
    <item>
        <title>Did you pick up a Mouse Storage box from Servarica ?</title>
        <link>https://staging.lowendspirit.com/index.php?p=/discussion/239/did-you-pick-up-a-mouse-storage-box-from-servarica</link>
        <pubDate>Tue, 03 Dec 2019 14:22:13 +0000</pubDate>
        <category>General</category>
        <dc:creator>Rahul</dc:creator>
        <guid isPermaLink="false">239@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>if so, how are they now ? since the bench marking mania may have ended.</p>

<p>Btw the specs were</p>

<blockquote><div>
  <p>1 CPU cores shared<br />
  1GB RAM<br />
  500gb disk<br />
  100mbps with 2TB limit<br />
  /64 IPv6 included<br />
  12$/year<br />
  Montreal, Canada ( Not OVH)</p>
</div></blockquote>
]]>
        </description>
    </item>
   </channel>
</rss>
