<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.w9cr.net/index.php?action=history&amp;feed=atom&amp;title=Linux_Network_Namespace</id>
	<title>Linux Network Namespace - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.w9cr.net/index.php?action=history&amp;feed=atom&amp;title=Linux_Network_Namespace"/>
	<link rel="alternate" type="text/html" href="https://wiki.w9cr.net/index.php?title=Linux_Network_Namespace&amp;action=history"/>
	<updated>2026-04-18T05:00:15Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.4</generator>
	<entry>
		<id>https://wiki.w9cr.net/index.php?title=Linux_Network_Namespace&amp;diff=7468&amp;oldid=prev</id>
		<title>Bryan at 05:14, 15 May 2023</title>
		<link rel="alternate" type="text/html" href="https://wiki.w9cr.net/index.php?title=Linux_Network_Namespace&amp;diff=7468&amp;oldid=prev"/>
		<updated>2023-05-15T05:14:21Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 05:14, 15 May 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This is an absolutely stupid use of a /24.  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This is an absolutely stupid use of a /24.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;traceroute -m255 becky.keekles.org&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;On linux/osx/bsd use &lt;/ins&gt;traceroute -m255 becky.keekles.org&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;For Windoze users: tracert -h 255 becky.keekles.org&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;traceroute to becky.keekles.org (192.77.144.221), 255 hops max, 60 byte packets&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;traceroute to becky.keekles.org (192.77.144.221), 255 hops max, 60 byte packets&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Bryan</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.w9cr.net/index.php?title=Linux_Network_Namespace&amp;diff=7467&amp;oldid=prev</id>
		<title>Bryan at 05:13, 15 May 2023</title>
		<link rel="alternate" type="text/html" href="https://wiki.w9cr.net/index.php?title=Linux_Network_Namespace&amp;diff=7467&amp;oldid=prev"/>
		<updated>2023-05-15T05:13:06Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 05:13, 15 May 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This is an absolutely stupid use of a /24.  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;This is an absolutely stupid use of a /24.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;traceroute -m255 becky.keekles.org&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;pre&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;traceroute to becky.keekles.org (192.77.144.221), 255 hops max, 60 byte packets&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; 1  router.129.keekles.org (199.47.174.129)  1.021 ms  1.042 ms  1.003 ms&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; 2  flowman.tampa.coop (23.149.104.3)  0.550 ms  0.524 ms  0.585 ms&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; 3  Oh.my.god.Becky.look.at.her.butt (192.77.144.1)  0.586 ms  0.592 ms  0.567 ms&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; 4  It.is.so.big (192.77.144.3)  0.582 ms  0.518 ms  0.465 ms&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; 5  She.looks.like.one.of.those.rap.guys.girlfriends (192.77.144.5)  0.496 ms  0.412 ms  0.555 ms&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; 6  Who.understands.those.rap.guys (192.77.144.7)  0.605 ms  0.512 ms  0.440 ms&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;snip&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;111  Little.in.the.middle.but.she.got.much.back (192.77.144.217)  4.012 ms  3.935 ms  3.904 ms&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;112  . (192.77.144.219)  3.853 ms  1.753 ms  1.722 ms&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;113  routed.by.bryanfields.net (192.77.144.221)  1.698 ms  1.675 ms  3.585 ms&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/pre&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;I've seen this done before but it was routing back and forth between two cisco routers.  This is hosted on a single Linux host and self contained.   &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;I've seen this done before but it was routing back and forth between two cisco routers.  This is hosted on a single Linux host and self contained.   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Bryan</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.w9cr.net/index.php?title=Linux_Network_Namespace&amp;diff=7466&amp;oldid=prev</id>
		<title>Bryan: Created page with &quot;This is an absolutely stupid use of a /24.   I've seen this done before but it was routing back and forth between two cisco routers.  This is hosted on a single Linux host and...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.w9cr.net/index.php?title=Linux_Network_Namespace&amp;diff=7466&amp;oldid=prev"/>
		<updated>2023-05-15T05:08:52Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;This is an absolutely stupid use of a /24.   I&amp;#039;ve seen this done before but it was routing back and forth between two cisco routers.  This is hosted on a single Linux host and...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This is an absolutely stupid use of a /24. &lt;br /&gt;
&lt;br /&gt;
I've seen this done before but it was routing back and forth between two cisco routers.  This is hosted on a single Linux host and self contained.  &lt;br /&gt;
&lt;br /&gt;
My first testing was using VRF's on Linux, but they are not true VRF's, ICMP will fail inside on them, and in general not an easy way to do it. &lt;br /&gt;
&lt;br /&gt;
Second try was using GRE interfaces into VRF's across the loopback interface, but that didn't work for some reason.  I did a bit of testing and saw them making it across the interface, but just dropping for some reason.&lt;br /&gt;
&lt;br /&gt;
I then stumbled on the [https://en.wikipedia.org/wiki/User-mode_Linux user mode linux] and found [https://en.wikipedia.org/wiki/Linux_namespaces Linux namespaces].  This appeared to be the way to do it and I configured 10 by hand just to get a feel for it.  I knew I'd have to write a script to generate the config as it was way to lengthy to do by hand.  &lt;br /&gt;
&lt;br /&gt;
= Config = &lt;br /&gt;
&lt;br /&gt;
The basic concept was to have a chain of tunnels or name spaces with a left and right interface.  Each interface would be connected to the next with a /31, so we can scale this to 127 name spaces for a /24.  This makes efficient use of a limited resource for a stupid application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Code Generator= &lt;br /&gt;
This is a small python program to generate the config.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/usr/local/bin/python3&lt;br /&gt;
#  subnetmaker&lt;br /&gt;
#  Build /31 network interfaces and name space config&lt;br /&gt;
#  Copyright Bryan Fields, 2023&lt;br /&gt;
#  bryan@bryanfields.net&lt;br /&gt;
#  Licensed under the AGPL 3&lt;br /&gt;
#&lt;br /&gt;
import sys&lt;br /&gt;
import ipaddress&lt;br /&gt;
#set the base namespace&lt;br /&gt;
base_namespace = 'vnet'&lt;br /&gt;
basesubnet = ipaddress.ip_network('192.77.144.0/24')&lt;br /&gt;
net_array = list(basesubnet.subnets(new_prefix=31))&lt;br /&gt;
&lt;br /&gt;
n=0&lt;br /&gt;
#setup the 000 interface&lt;br /&gt;
#ip link add veth001-L type veth peer name veth000-R&lt;br /&gt;
#ip addr add 192.77.144.0/31 dev veth000-L&lt;br /&gt;
#ip link set veth000-R up&lt;br /&gt;
#ip route add 192.77.144.0/24 via 192.77.144.1&lt;br /&gt;
network=str(net_array[0])&lt;br /&gt;
hosts=list(net_array[0].hosts())&lt;br /&gt;
nextHosts=list(net_array[0].hosts())&lt;br /&gt;
prefixlen=str(net_array[0].prefixlen)&lt;br /&gt;
host1=str(hosts[0])+&amp;quot;/&amp;quot;+prefixlen&lt;br /&gt;
host2=str(hosts[1])+&amp;quot;/&amp;quot;+prefixlen&lt;br /&gt;
thisNetdevL=&amp;quot;veth&amp;quot;&amp;quot;{:03d}&amp;quot;.format(n)+ &amp;quot;-L&amp;quot;&lt;br /&gt;
thisNetdevR=&amp;quot;veth&amp;quot;&amp;quot;{:03d}&amp;quot;.format(n)+ &amp;quot;-R&amp;quot;&lt;br /&gt;
nextNetdevL=&amp;quot;veth&amp;quot;&amp;quot;{:03d}&amp;quot;.format(n+1)+ &amp;quot;-L&amp;quot;&lt;br /&gt;
nextNetdevR=&amp;quot;veth&amp;quot;&amp;quot;{:03d}&amp;quot;.format(n+1)+ &amp;quot;-R&amp;quot;&lt;br /&gt;
nextHostL =str(hosts[1])&lt;br /&gt;
&lt;br /&gt;
print (&amp;quot;ip link add &amp;quot;+nextNetdevL+&amp;quot; type veth peer name &amp;quot;+thisNetdevR)&lt;br /&gt;
print (&amp;quot;ip addr add &amp;quot;+ host1 +&amp;quot; dev &amp;quot; + thisNetdevR)&lt;br /&gt;
print (&amp;quot;ip link set &amp;quot;+thisNetdevR+&amp;quot; up&amp;quot;)&lt;br /&gt;
print (&amp;quot;ip route add &amp;quot;+str(basesubnet)+&amp;quot; via &amp;quot;+nextHostL)&lt;br /&gt;
print (&amp;quot;#end of hostnet&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
n=1&lt;br /&gt;
for n in range(1,128):&lt;br /&gt;
    thisNameSpace=&amp;quot;vnet&amp;quot;&amp;quot;{:03d}&amp;quot;.format(n)&lt;br /&gt;
    network=str(net_array[n])&lt;br /&gt;
    hostsL = list(net_array[n-1].hosts())&lt;br /&gt;
    hostsR = list(net_array[n].hosts())&lt;br /&gt;
    prefixlen=str(net_array[n].prefixlen)&lt;br /&gt;
    hostL=str(hostsL[1])+&amp;quot;/&amp;quot;+prefixlen&lt;br /&gt;
    hostR=str(hostsR[0])+&amp;quot;/&amp;quot;+prefixlen&lt;br /&gt;
    thisNetdevL=&amp;quot;veth&amp;quot;&amp;quot;{:03d}&amp;quot;.format(n)+ &amp;quot;-L&amp;quot;&lt;br /&gt;
    thisNetdevR=&amp;quot;veth&amp;quot;&amp;quot;{:03d}&amp;quot;.format(n)+ &amp;quot;-R&amp;quot;&lt;br /&gt;
    nextNetdevL=&amp;quot;veth&amp;quot;&amp;quot;{:03d}&amp;quot;.format(n+1)+ &amp;quot;-L&amp;quot;&lt;br /&gt;
    nextNetdevR=&amp;quot;veth&amp;quot;&amp;quot;{:03d}&amp;quot;.format(n+1)+ &amp;quot;-R&amp;quot;&lt;br /&gt;
    nextHostR =str(hostsR[1])&lt;br /&gt;
    nextHostL =str(hostsL[0])&lt;br /&gt;
    print (&amp;quot;ip netns add &amp;quot;+thisNameSpace)&lt;br /&gt;
    print (&amp;quot;ip link add &amp;quot;+nextNetdevL+&amp;quot; type veth peer name &amp;quot;+thisNetdevR)&lt;br /&gt;
    print (&amp;quot;ip link set &amp;quot;+thisNetdevL+&amp;quot; netns &amp;quot;+thisNameSpace)&lt;br /&gt;
    print (&amp;quot;ip link set &amp;quot;+thisNetdevR+&amp;quot; netns &amp;quot;+thisNameSpace)&lt;br /&gt;
    print (&amp;quot;ip -n &amp;quot;+thisNameSpace+&amp;quot; link set &amp;quot;+thisNetdevL+&amp;quot; up&amp;quot;)&lt;br /&gt;
    print (&amp;quot;ip -n &amp;quot;+thisNameSpace+&amp;quot; link set &amp;quot;+thisNetdevR+&amp;quot; up&amp;quot;)&lt;br /&gt;
    print (&amp;quot;ip -n &amp;quot;+thisNameSpace+&amp;quot; link set lo up&amp;quot;)&lt;br /&gt;
    print (&amp;quot;ip -n &amp;quot;+thisNameSpace+&amp;quot; addr add &amp;quot;+hostL+&amp;quot; dev &amp;quot;+thisNetdevL)&lt;br /&gt;
    print (&amp;quot;ip -n &amp;quot;+thisNameSpace+&amp;quot; addr add &amp;quot;+hostR+&amp;quot; dev &amp;quot;+thisNetdevR)&lt;br /&gt;
    print (&amp;quot;#Linux Sys settings&amp;quot;)&lt;br /&gt;
    print (&amp;quot;ip netns exec &amp;quot;+thisNameSpace+&amp;quot; sysctl -w net.ipv4.ip_forward=1&amp;quot;)&lt;br /&gt;
    print (&amp;quot;ip netns exec &amp;quot;+thisNameSpace+&amp;quot; sysctl -w net.ipv4.ip_default_ttl=255&amp;quot;)&lt;br /&gt;
    print (&amp;quot;#Default Route Left&amp;quot;)&lt;br /&gt;
    print (&amp;quot;ip -n &amp;quot;+thisNameSpace+&amp;quot; route add 0/0 via &amp;quot;+nextHostL)&lt;br /&gt;
    print (&amp;quot;#.0 Route Left&amp;quot;)&lt;br /&gt;
    print (&amp;quot;ip -n &amp;quot;+thisNameSpace+&amp;quot; route add &amp;quot;+str(net_array[0])+&amp;quot; via &amp;quot;+nextHostL)&lt;br /&gt;
    print (&amp;quot;#Subnet /24 Right&amp;quot;)&lt;br /&gt;
    print (&amp;quot;ip -n &amp;quot;+thisNameSpace+&amp;quot; route add &amp;quot;+str(basesubnet)+&amp;quot; via &amp;quot;+nextHostR)&lt;br /&gt;
exit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Bryan</name></author>
		
	</entry>
</feed>