<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.cursedsilicon.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Pancakepuppy</id>
	<title>Cursed Silicons Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.cursedsilicon.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Pancakepuppy"/>
	<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/wiki/Special:Contributions/Pancakepuppy"/>
	<updated>2026-09-19T10:45:18Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=How_to_Get_Connected_with_RouterOS&amp;diff=545</id>
		<title>How to Get Connected with RouterOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=How_to_Get_Connected_with_RouterOS&amp;diff=545"/>
		<updated>2026-08-29T04:49:19Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: More formatting, massaging images and stuff&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Configure your Internet-Facing Port ===&lt;br /&gt;
This step will look different depending on your router hardware, pre-existing RouterOS configuration, and home network architecture. In my case, I’m using a &#039;&#039;Mikrotik hAP ac2&#039;&#039;, minimal pre-existing settings, and a home network that configures hosts via DHCP.&lt;br /&gt;
&lt;br /&gt;
Interface &#039;&#039;ether2&#039;&#039; is used for the connection onto my home network. (You’ll use whatever interface you want on your hardware.) Since this is Mikrotik router hardware with switched Ethernet ports, I will enter the &#039;&#039;&#039;Switch &amp;gt; Port Isolation&#039;&#039;&#039; menu to forward traffic directly to the CPU from &#039;&#039;ether2&#039;&#039;.[[File:Step 1 - Port Isolation.png|thumb|701x701px|RouterOS Switch Port Isolation menu|none]]Enter the &#039;&#039;&#039;IP &amp;gt; DHCP Client&#039;&#039;&#039; menu and create a new DHCP client to configure &#039;&#039;ether2&#039;&#039;. Once a lease is obtained, a default route and interface IP address will be visible in the IP &amp;gt; Routes and IP &amp;gt; Addresses menus respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:Step 1 - DHCP Client.png|thumb|697x697px|RouterOS DHCP Client menu|none]]&lt;br /&gt;
=== Configure your WireGuard Tunnel ===&lt;br /&gt;
For this step, you’ll need your WireGuard connection info from CGHMN User Services, which also require that you’ve generated public and private keys.&lt;br /&gt;
&lt;br /&gt;
[[File:Step 2 - WireGuard Interface.png|thumb|605x605px|RouterOS WireGuard menu|none]]Open the &#039;&#039;&#039;WireGuard&#039;&#039;&#039; menu and create a new WireGuard interface. You only need to add your public and private keys in this window and can leave the listen port blank.&lt;br /&gt;
&lt;br /&gt;
[[File:Step 2 - WireGuard Peer.png|thumb|738x738px|RouterOS WireGuard Peer menu|none]]Navigate to the &#039;&#039;&#039;Peers&#039;&#039;&#039; tab and create a new peer. From your CGHMN User Services ‘Welcome’ e-mail, fill in the Public Key, Endpoint and Endpoint Port, Allowed Addresses, Preshared Key, Persistent Keepalive, and Client Address (which is your ‘Tunnel IP’.) Client Keepalive isn’t required but I have it set to 25 seconds. &lt;br /&gt;
&lt;br /&gt;
=== Configure Your CGHMN Routed Subnet ===&lt;br /&gt;
Next, we’ll set up the routed subnet we were assigned. I’ve configured my subnet to assign addresses to clients with DHCP, which I’ll cover in this section as well.&lt;br /&gt;
&lt;br /&gt;
Ports &#039;&#039;ether3&#039;&#039; through &#039;&#039;ether5&#039;&#039; have been added to a bridge named &#039;&#039;cghmn-lan&#039;&#039; in the &#039;&#039;&#039;Bridge&#039;&#039;&#039; menu.[[File:Step 3 - Bridge menu.png|RouterOS Bridge menu|none|frame]]&lt;br /&gt;
[[File:Step 3 - Bridge Ports menu.png|thumb|407x407px|RouterOS Bridge Ports menu|none]]&lt;br /&gt;
&lt;br /&gt;
In the &#039;&#039;&#039;IP &amp;gt; Addresses&#039;&#039;&#039; menu, create a new IP address in your routed subnet for the router to use with the bridge interface. I (PancakePuppy) have the 100.68.209.0/24 subnet and I’m going to use the first available address for my router. T his is arbitrary – it can be any address that isn’t network (.0) or broadcast (.255).&lt;br /&gt;
[[File:Step 3 - IP Addresses menu.png|thumb|538x538px|RouterOS IP Addresses menu|none]]&lt;br /&gt;
&lt;br /&gt;
Let’s set up the DHCP Server to dynamically configure our hosts. With a protocol. First, open the &#039;&#039;&#039;IP &amp;gt; Pool&#039;&#039;&#039; menu and create a new pool. I’ve made a pool which covers the full remainder of my routed subnet, but you may want to leave some room for statically configured devices.[[File:Step 3 - IP Pool menu.png|thumb|462x462px|RouterOS IP Pool menu|none]]&lt;br /&gt;
&lt;br /&gt;
Open the &#039;&#039;&#039;IP &amp;gt; DHCP Server&#039;&#039;&#039; menu and go to the &#039;&#039;&#039;Networks&#039;&#039;&#039; tab. Create a new network and enter your routed subnet in the Address field, your router IP in Gateway, and whichever DNS servers you wish your hosts to use. I used the CGHMN Core DNS servers. Configure the other options to your preference.[[File:Step 3 - DHCP Networks menu.png|thumb|563x563px|RouterOS DHCP Server Networks menu|none]]&lt;br /&gt;
&lt;br /&gt;
In the &#039;&#039;&#039;DHCP&#039;&#039;&#039; tab, create a new DHCP server on your routed subnet interface and select the Address Pool we created earlier. With this created, hosts you connect to the specified interface will receive IP addresses, domain name services, and know where to send packets that want to escape the subnet.[[File:Step 3 - DHCP Server menu.png|thumb|672x672px|RouterOS DHCP Server menu|none]]&lt;br /&gt;
&lt;br /&gt;
You can view DHCP leases assigned by the server and create reservations in the &#039;&#039;&#039;Leases&#039;&#039;&#039; tab.[[File:Step 3 - DHCP Leases menu.png|thumb|1074x1074px|RouterOS DHCP Leases menu|none]]&lt;br /&gt;
=== Add Routes ===&lt;br /&gt;
At this point, if a host sends the router a packet destined for a CGHMN address outside your subnet, it will be dropped. We need to add a few static routes so our router knows where to send CGHMN traffic.&lt;br /&gt;
&lt;br /&gt;
Open the &#039;&#039;&#039;IP &amp;gt; Routes&#039;&#039;&#039; menu. You should see a few entries in the routing table already with a &#039;&#039;&#039;D&#039;&#039;&#039; flag, indicating they were dynamically (automatically) added for us. We will create 3 new routes using the Allowed IPs list to guide us and set Gateway Interface to the WireGuard interface from Step 2, &#039;&#039;wg1&#039;&#039; in this case.[[File:Step 4 - Add Routes.png|thumb|784x784px|RouterOS IP Routes menu|none]]&lt;br /&gt;
&lt;br /&gt;
=== Add Firewall Rules ===&lt;br /&gt;
While it may not be absolutely necessary, I like to have a few basic firewall rules for allowing incoming pings, related and established connections, and blocking everything else. I also want a rule to drop packets arriving from the tunnel interface with a destination address on my home network. I can’t imagine that happening but I’ll cover the possibility anyways.&lt;br /&gt;
[[File:Step 5 - Add Firewall Rules.png|thumb|1121x1121px|RouterOS Firewall Rules menu|none]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rules are evaluated in ascending numerical order, so make sure your final “deny everything else” rule comes last. Besides just allowing or denying traffic, firewall rules can also be used to log, create address lists, or tarpit connections. Experimenting is part of the fun!&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=How_to_Get_Connected&amp;diff=544</id>
		<title>How to Get Connected</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=How_to_Get_Connected&amp;diff=544"/>
		<updated>2026-08-29T04:45:46Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: Added link to RouterOS how-to page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Compu-Global-Hyper-Mega-Net]]&lt;br /&gt;
This is a quick and dirty &amp;quot;how do I get on CGHMN&amp;quot; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since the service is in &amp;quot;open beta&amp;quot; these steps are a bit vague and manual. But over time as we figure out what works we&#039;ll add more connection methods and better documentation&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Step 1: ===&lt;br /&gt;
[[Signup|&#039;&#039;&#039;Let us know you&#039;d like to connect!&#039;&#039;&#039;]] &lt;br /&gt;
&lt;br /&gt;
(We&#039;ll need information from you such as your WireGuard Pubkey to let you connect to the network)[[File:CGHMN.png|thumb|319x319px|Example CGHMN Router Setup using a GL-AR300M and basic network switch]]&lt;br /&gt;
&lt;br /&gt;
=== Hardware requirements ===&lt;br /&gt;
To connect your retro machine(s) to the CGHMN, you&#039;ll need the following:&lt;br /&gt;
*&#039;&#039;&#039;An Ethernet connection on your retro device(s) of choice, with a TCP/IP (v4) stack for now! TrumpetWinSock, Microsoft TCP/IP, whatever. It all works.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Something with the ability to run WireGuard and forward IPv4 packets at the minimum and, for any non-IP packets, &amp;lt;code&amp;gt;gretap&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;nftables&amp;lt;/code&amp;gt;. Personally we recommend something running OpenWRT, like the [https://www.gl-inet.com/products/gl-ar300m GL-AR300M] which we have successfully tested to work. We&#039;re currently working on a pre-built image for some select routers to make the setup easier for new members. A script to configure already existing OpenWRT instances can be found below.&#039;&#039;&#039;&lt;br /&gt;
* Alternatively, you can also run the CGHMN routing on any standard Linux box which has at least one Ethernet port and either a second one or WiFi for internet connectivity. &amp;lt;s&amp;gt;A basic script to set up a Linux machine as a router is posted below&amp;lt;/s&amp;gt; (TODO!).&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Optionally: A simple network switch, in case you want to add multiple machines to the network. You plug one end into the CGHMN Router box and then your clients can all access CGHMN. Super easy!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
On the right is an example of what a CGHMN router setup could look like.&lt;br /&gt;
&lt;br /&gt;
=== Get connected - With OpenWRT ===&lt;br /&gt;
If you chose to go with an OpenWRT compatible router or want to run OpenWRT on typical x86 hardware/in a VM, you can follow these steps to get yourself connected to the CGHMN:&lt;br /&gt;
&lt;br /&gt;
# Update your OpenWRT install to the latest version to ensure all required packages are available and compatible.&lt;br /&gt;
# Download [https://raw.githubusercontent.com/CGHMN/openwrt-scripts/refs/heads/main/get-connected/setup-cghmn.sh this script from GitHub] to your OpenWRT router: &amp;lt;code&amp;gt;wget https://cghmn.org/get-connected.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
# Run the following commands on the router:&lt;br /&gt;
## &amp;lt;code&amp;gt;ash setup-cghmn.sh install-pkgs&amp;lt;/code&amp;gt;&lt;br /&gt;
### If you run into issues at this step, please make sure you are on OpenWRT 25.12 or later - the setup script only supports version 25.12 and up.&lt;br /&gt;
## Reboot the router, this step is necessary if you intend to use the web UI for any other configuration or see the status of the CGHMN connection, to make LuCI recognize WireGuard connections.&lt;br /&gt;
## &amp;lt;code&amp;gt;ash setup-cghmn.sh init&amp;lt;/code&amp;gt;&lt;br /&gt;
## You will be asked what network port you&#039;d like to use for the Retro LAN. This is where you will plug in your retro machines to be part of the CGHMN. Choose a port that is not assigned to any OpenWRT interface like &#039;&#039;&#039;lan&#039;&#039;&#039; or &#039;&#039;&#039;wan&#039;&#039;&#039; or which not already part of a bridge and enter the Linux interface name, e.g. &amp;lt;code&amp;gt;eth1&amp;lt;/code&amp;gt;, then press &amp;lt;code&amp;gt;[Enter]&amp;lt;/code&amp;gt; to continue. If your router only has two ports and you&#039;re using one for WAN, then you first have to [https://openwrt.org/docs/guide-user/luci/luci.secure#allow_access_from_internet enable the web UI and SSH access via the &#039;&#039;&#039;wan&#039;&#039;&#039; OpenWRT interface], remove the entire &#039;&#039;&#039;lan&#039;&#039;&#039; OpenWRT interface and the default &amp;lt;code&amp;gt;br-lan&amp;lt;/code&amp;gt; or any other bridge the interface might belong to, to free the network port and continue the setup over the IP address your router got on its WAN side. If you only have a single Ethernet port, you&#039;re running on a router setup we can&#039;t really recommend, however you can configure VLANs and use a managed switch to both get a WAN DHCP address for internet access and have a separate VLAN for the Retro LAN bridge over a single port. This is commonly referred to as &amp;quot;[[wikipedia:Router_on_a_stick|router on a stick]]&amp;quot;. Just enter the VLAN interface name here if you choose to go that route.&lt;br /&gt;
# Now you will be given some information on the console, including a WireGuard public key. Head over to https://signup.cghmn.org, fill out the form there with your details like an e-mail address we can reach you under and copy over the WireGuard public key from the script output into the appropriate field on the web page. Once your request has been approved, you&#039;ll receive an e-mail with your CGHMN WireGuard connection details. Note: If you cannot copy-paste, for example, because you&#039;re on a VM VNC console, you can run &amp;lt;code&amp;gt;ash setup-cghmn.sh pubkey-qr&amp;lt;/code&amp;gt; to get a QR code with your public key, which can be scanned with a phone, tablet or software QR code parser to get the key as copy-pastable text.&lt;br /&gt;
# In the e-mail from your sign-up server post approval, you will receive a tunnel IPv4 address (&amp;lt;code&amp;gt;100.65.x.x/32&amp;lt;/code&amp;gt;) and a routed IPv4 subnet (&amp;lt;code&amp;gt;100.68.x.0/24&amp;lt;/code&amp;gt; and up). These will be needed on the next step&lt;br /&gt;
# Run &amp;lt;code&amp;gt;ash setup-cghmn.sh set-tunnel-ip&amp;lt;/code&amp;gt;, enter your new tunnel IP address with or without the &amp;lt;code&amp;gt;/32&amp;lt;/code&amp;gt; subnet mask, enter your routed subnet &#039;&#039;&#039;with&#039;&#039;&#039; the CIDR netmask and supply your pre-shared key from the e-mail.&lt;br /&gt;
# Once the script completed successfully, reboot the router to ensure all interfaces are up properly. After the reboot, your retro devices should receive an IP address in your routed IPv4 subnet on the Retro LAN port you chose above and be able to communicate with other machines on the CGHMN network.&lt;br /&gt;
&lt;br /&gt;
=== Get Connected - Manually (Linux, WireGuard/IP traffic only) ===&lt;br /&gt;
In case you want to setup a connection into the network manually, here are the required steps and information you should be needing:&lt;br /&gt;
&lt;br /&gt;
* Generate a Wireguard private key and public key, this command writes a fresh WireGuard private key to &amp;lt;code&amp;gt;private-key&amp;lt;/code&amp;gt; and the corresponding public key to &amp;lt;code&amp;gt;public-key&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 $ wg genkey | tee private-key | wg pubkey &amp;gt; public-key&lt;br /&gt;
&lt;br /&gt;
* NEVER share your private key, even with us! It should never be required outside of your own WireGuard setup!&lt;br /&gt;
* You will, however, need to share your public key with us. Head over to https://signup.cghmn.org, fill out the forms with some details like an e-mail address we can reach you under and paste the newly generated public key into the public key field.&lt;br /&gt;
* After submitting your request, we&#039;ll approve it as soon as possible and you&#039;ll get two IP addresses sent over to your specified e-mail: Your tunnel IP address, with which &#039;&#039;your&#039;&#039; router talks to &#039;&#039;our&#039;&#039; router, and a routed subnet, from which you can assign IPs to your own machines so they can talk to other CGHMN member devices on the network without NAT in the way.&lt;br /&gt;
* In the e-mail, you will also find a full WireGuard configuration looking a little like this:&lt;br /&gt;
&lt;br /&gt;
 [Interface]&lt;br /&gt;
 PrivateKey = xxx&lt;br /&gt;
 Address = 100.65.0.xxx/32&lt;br /&gt;
 &lt;br /&gt;
 [Peer]&lt;br /&gt;
 PublicKey = k/QiJIbMakMKgTCHVt8/D+8k4DzRVM6U33F3gMZfRUg=&lt;br /&gt;
 Endpoint = us.wg.cghmn.org:42070&lt;br /&gt;
 AllowedIPs = 100.64.0.0/10&lt;br /&gt;
 PersistentKeepalive = 15&lt;br /&gt;
 PresharedKey = xxx&lt;br /&gt;
&lt;br /&gt;
* Copy this configuration to a file, &amp;lt;code&amp;gt;wg-cghmn.conf&amp;lt;/code&amp;gt;, for example.&lt;br /&gt;
* If you use wg-quick like below, you can also add the line &amp;lt;code&amp;gt;DNS = 100.64.12.2&amp;lt;/code&amp;gt; in the [Interface] section to make use of our DNS resolvers and access other CGHMN member&#039;s services through domain names, though be adviced that we cannot guarantee public internet address lookups, which means this might break internet access for the host you&#039;re opening this WireGuard tunnel from! Alternatively, for advanced users, one can setup dnsmasq to automatically pull any domains we offer within the CGHMN and forward them to our DNS resolvers with the help of [https://raw.githubusercontent.com/CGHMN/openwrt-scripts/refs/heads/main/dns/update-dns-forwards.sh this script from our GitHub] and having it being run periodically through cron, systemd-timers or similar. See [[CGHMN DNS Information#dnsmasq Synchronization Script|this Wiki article]] for more information.&lt;br /&gt;
* Then, run &amp;lt;code&amp;gt;wg-quick up ./wg-cghmn.conf&amp;lt;/code&amp;gt;, perhaps requiring &amp;lt;code&amp;gt;doas&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;sudo&amp;lt;/code&amp;gt;, to bring the tunnel up and connect to the network!&lt;br /&gt;
&lt;br /&gt;
This should bring whatever system you&#039;ve set the tunnel up on onto the network and is now reachable for other members on the network, as long as the firewall on your device is configured accordingly, of course.&lt;br /&gt;
&lt;br /&gt;
==== Enabling routing ====&lt;br /&gt;
&lt;br /&gt;
Once you have WireGuard running and are able to reach CGHMN hosts from your Linux box, all you have to do to get the rest of your network online is enable routing in the kernel.&lt;br /&gt;
&lt;br /&gt;
 # echo 1 &amp;gt; /proc/sys/net/ipv4/conf/default/forwarding&lt;br /&gt;
&lt;br /&gt;
Check your distro&#039;s docs for instructions for automatically setting sysctls on startup. On Debian, you can add this line to &amp;lt;code&amp;gt;/etc/sysctl.conf&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 net.ipv4.conf.default.forwarding=1&lt;br /&gt;
&lt;br /&gt;
You will need to give your client machines IP addresses within your CGHMN routed subnet (provided in your welcome email) and set the gateway to the IP of the machine you&#039;re running WireGuard on. You can assign addresses manually or use a DHCP/BOOTP server. Many CGHMN users use &amp;lt;code&amp;gt;dnsmasq&amp;lt;/code&amp;gt; for this; ask for help in IRC if you need it.&lt;br /&gt;
&lt;br /&gt;
At present, CGHMN does not use IPv6.&lt;br /&gt;
&lt;br /&gt;
=== Get Connected - With Mikrotik RouterOS ===&lt;br /&gt;
[[How to Get Connected with RouterOS]]&lt;br /&gt;
&lt;br /&gt;
=== After you get connected ===&lt;br /&gt;
There are a few optional things you might want to do.&lt;br /&gt;
&lt;br /&gt;
==== Network mailing list ====&lt;br /&gt;
There is a mailing list you can subscribe to if you want to be notified about things that may affect CGHMN or core services. You can subscribe to the list here: https://berwick-upon-tweed.cobaltqu.be/postorius/lists/cghmn-announce.lists.cobaltqu.be/.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you need to post to the list, you will need to subscribe before you can be added to the list of poster.&lt;br /&gt;
&lt;br /&gt;
==== Explore things available on the network ====&lt;br /&gt;
There is a collection of [[services people are running]] - things like email/hosting/chat/search/etc.&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=How_to_Get_Connected_with_RouterOS&amp;diff=543</id>
		<title>How to Get Connected with RouterOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=How_to_Get_Connected_with_RouterOS&amp;diff=543"/>
		<updated>2026-08-29T04:42:13Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: Formatting change&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Configure your Internet-Facing Port ===&lt;br /&gt;
This step will look different depending on your router hardware, pre-existing RouterOS configuration, and home network architecture. In my case, I’m using a &#039;&#039;Mikrotik hAP ac2&#039;&#039;, minimal pre-existing settings, and a home network that configures hosts via DHCP.&lt;br /&gt;
&lt;br /&gt;
Interface &#039;&#039;ether2&#039;&#039; is used for the connection onto my home network. (You’ll use whatever interface you want on your hardware.) Since this is Mikrotik router hardware with switched Ethernet ports, I will enter the &#039;&#039;&#039;Switch &amp;gt; Port Isolation&#039;&#039;&#039; menu to forward traffic directly to the CPU from &#039;&#039;ether2&#039;&#039;.[[File:Step 1 - Port Isolation.png|thumb|442x442px|RouterOS Switch Port Isolation menu|border|none]]Enter the &#039;&#039;&#039;IP &amp;gt; DHCP Client&#039;&#039;&#039; menu and create a new DHCP client to configure &#039;&#039;ether2&#039;&#039;. Once a lease is obtained, a default route and interface IP address will be visible in the IP &amp;gt; Routes and IP &amp;gt; Addresses menus respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:Step 1 - DHCP Client.png|thumb|423x423px|RouterOS DHCP Client menu|none]]&lt;br /&gt;
=== Configure your WireGuard Tunnel ===&lt;br /&gt;
For this step, you’ll need your WireGuard connection info from CGHMN User Services, which also require that you’ve generated public and private keys.&lt;br /&gt;
&lt;br /&gt;
[[File:Step 2 - WireGuard Interface.png|thumb|393x393px|RouterOS WireGuard menu|none]]Open the &#039;&#039;&#039;WireGuard&#039;&#039;&#039; menu and create a new WireGuard interface. You only need to add your public and private keys in this window and can leave the listen port blank.&lt;br /&gt;
&lt;br /&gt;
[[File:Step 2 - WireGuard Peer.png|thumb|459x459px|RouterOS WireGuard Peer menu|none]]Navigate to the &#039;&#039;&#039;Peers&#039;&#039;&#039; tab and create a new peer. From your CGHMN User Services ‘Welcome’ e-mail, fill in the Public Key, Endpoint and Endpoint Port, Allowed Addresses, Preshared Key, Persistent Keepalive, and Client Address (which is your ‘Tunnel IP’.) Client Keepalive isn’t required but I have it set to 25 seconds. &lt;br /&gt;
&lt;br /&gt;
=== Configure Your CGHMN Routed Subnet ===&lt;br /&gt;
Next, we’ll set up the routed subnet we were assigned. I’ve configured my subnet to assign addresses to clients with DHCP, which I’ll cover in this section as well.&lt;br /&gt;
&lt;br /&gt;
Ports &#039;&#039;ether3&#039;&#039; through &#039;&#039;ether5&#039;&#039; have been added to a bridge named &#039;&#039;cghmn-lan&#039;&#039; in the &#039;&#039;&#039;Bridge&#039;&#039;&#039; menu.[[File:Step 3 - Bridge menu.png|thumb|172x172px|RouterOS Bridge menu|none]]&lt;br /&gt;
[[File:Step 3 - Bridge Ports menu.png|thumb|243x243px|RouterOS Bridge Ports menu|none]]&lt;br /&gt;
&lt;br /&gt;
In the &#039;&#039;&#039;IP &amp;gt; Addresses&#039;&#039;&#039; menu, create a new IP address in your routed subnet for the router to use with the bridge interface. I (PancakePuppy) have the 100.68.209.0/24 subnet and I’m going to use the first available address for my router. T his is arbitrary – it can be any address that isn’t network (.0) or broadcast (.255).&lt;br /&gt;
[[File:Step 3 - IP Addresses menu.png|thumb|306x306px|RouterOS IP Addresses menu|none]]&lt;br /&gt;
&lt;br /&gt;
Let’s set up the DHCP Server to dynamically configure our hosts. With a protocol. First, open the &#039;&#039;&#039;IP &amp;gt; Pool&#039;&#039;&#039; menu and create a new pool. I’ve made a pool which covers the full remainder of my routed subnet, but you may want to leave some room for statically configured devices.[[File:Step 3 - IP Pool menu.png|thumb|306x306px|RouterOS IP Pool menu|none]]&lt;br /&gt;
&lt;br /&gt;
Open the &#039;&#039;&#039;IP &amp;gt; DHCP Server&#039;&#039;&#039; menu and go to the &#039;&#039;&#039;Networks&#039;&#039;&#039; tab. Create a new network and enter your routed subnet in the Address field, your router IP in Gateway, and whichever DNS servers you wish your hosts to use. I used the CGHMN Core DNS servers. Configure the other options to your preference.[[File:Step 3 - DHCP Networks menu.png|thumb|403x403px|RouterOS DHCP Server Networks menu|none]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the &#039;&#039;&#039;DHCP&#039;&#039;&#039; tab, create a new DHCP server on your routed subnet interface and select the Address Pool we created earlier. With this created, hosts you connect to the specified interface will receive IP addresses, domain name services, and know where to send packets that want to escape the subnet.[[File:Step 3 - DHCP Server menu.png|thumb|317x317px|RouterOS DHCP Server menu|none]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can view DHCP leases assigned by the server and create reservations in the &#039;&#039;&#039;Leases&#039;&#039;&#039; tab.[[File:Step 3 - DHCP Leases menu.png|thumb|476x476px|RouterOS DHCP Leases menu|none]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Add Routes ===&lt;br /&gt;
At this point, if a host sends the router a packet destined for a CGHMN address outside your subnet, it will be dropped. We need to add a few static routes so our router knows where to send CGHMN traffic.&lt;br /&gt;
&lt;br /&gt;
Open the &#039;&#039;&#039;IP &amp;gt; Routes&#039;&#039;&#039; menu. You should see a few entries in the routing table already with a &#039;&#039;&#039;D&#039;&#039;&#039; flag, indicating they were dynamically (automatically) added for us. We will create 3 new routes using the Allowed IPs list to guide us and set Gateway Interface to the WireGuard interface from Step 2, &#039;&#039;wg1&#039;&#039; in this case.[[File:Step 4 - Add Routes.png|thumb|715x715px|RouterOS IP Routes menu|none]]&lt;br /&gt;
&lt;br /&gt;
=== Add Firewall Rules ===&lt;br /&gt;
While it may not be absolutely necessary, I like to have a few basic firewall rules for allowing incoming pings, related and established connections, and blocking everything else. I also want a rule to drop packets arriving from the tunnel interface with a destination address on my home network. I can’t imagine that happening but I’ll cover the possibility anyways.&lt;br /&gt;
[[File:Step 5 - Add Firewall Rules.png|thumb|787x787px|RouterOS Firewall Rules menu|none]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rules are evaluated in ascending numerical order, so make sure your final “deny everything else” rule comes last. Besides just allowing or denying traffic, firewall rules can also be used to log, create address lists, or tarpit connections. Experimenting is part of the fun!&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=How_to_Get_Connected_with_RouterOS&amp;diff=542</id>
		<title>How to Get Connected with RouterOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=How_to_Get_Connected_with_RouterOS&amp;diff=542"/>
		<updated>2026-08-29T04:41:45Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: Formatting changes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Configure your Internet-Facing Port ===&lt;br /&gt;
This step will look different depending on your router hardware, pre-existing RouterOS configuration, and home network architecture. In my case, I’m using a &#039;&#039;Mikrotik hAP ac2&#039;&#039;, minimal pre-existing settings, and a home network that configures hosts via DHCP.&lt;br /&gt;
&lt;br /&gt;
Interface &#039;&#039;ether2&#039;&#039; is used for the connection onto my home network. (You’ll use whatever interface you want on your hardware.) Since this is Mikrotik router hardware with switched Ethernet ports, I will enter the &#039;&#039;&#039;Switch &amp;gt; Port Isolation&#039;&#039;&#039; menu to forward traffic directly to the CPU from &#039;&#039;eth&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;er2&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
[[File:Step 1 - Port Isolation.png|thumb|442x442px|RouterOS Switch Port Isolation menu|border|none]]Enter the &#039;&#039;&#039;IP &amp;gt; DHCP Client&#039;&#039;&#039; menu and create a new DHCP client to configure &#039;&#039;ether2&#039;&#039;. Once a lease is obtained, a default route and interface IP address will be visible in the IP &amp;gt; Routes and IP &amp;gt; Addresses menus respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:Step 1 - DHCP Client.png|thumb|423x423px|RouterOS DHCP Client menu|none]]&lt;br /&gt;
=== Configure your WireGuard Tunnel ===&lt;br /&gt;
For this step, you’ll need your WireGuard connection info from CGHMN User Services, which also require that you’ve generated public and private keys.&lt;br /&gt;
&lt;br /&gt;
[[File:Step 2 - WireGuard Interface.png|thumb|393x393px|RouterOS WireGuard menu|none]]Open the &#039;&#039;&#039;WireGuard&#039;&#039;&#039; menu and create a new WireGuard interface. You only need to add your public and private keys in this window and can leave the listen port blank.&lt;br /&gt;
&lt;br /&gt;
[[File:Step 2 - WireGuard Peer.png|thumb|459x459px|RouterOS WireGuard Peer menu|none]]Navigate to the &#039;&#039;&#039;Peers&#039;&#039;&#039; tab and create a new peer. From your CGHMN User Services ‘Welcome’ e-mail, fill in the Public Key, Endpoint and Endpoint Port, Allowed Addresses, Preshared Key, Persistent Keepalive, and Client Address (which is your ‘Tunnel IP’.) Client Keepalive isn’t required but I have it set to 25 seconds. &lt;br /&gt;
&lt;br /&gt;
=== Configure Your CGHMN Routed Subnet ===&lt;br /&gt;
Next, we’ll set up the routed subnet we were assigned. I’ve configured my subnet to assign addresses to clients with DHCP, which I’ll cover in this section as well.&lt;br /&gt;
&lt;br /&gt;
Ports &#039;&#039;ether3&#039;&#039; through &#039;&#039;ether5&#039;&#039; have been added to a bridge named &#039;&#039;cghmn-lan&#039;&#039; in the &#039;&#039;&#039;Bridge&#039;&#039;&#039; menu.[[File:Step 3 - Bridge menu.png|thumb|172x172px|RouterOS Bridge menu|none]]&lt;br /&gt;
[[File:Step 3 - Bridge Ports menu.png|thumb|243x243px|RouterOS Bridge Ports menu|none]]&lt;br /&gt;
&lt;br /&gt;
In the &#039;&#039;&#039;IP &amp;gt; Addresses&#039;&#039;&#039; menu, create a new IP address in your routed subnet for the router to use with the bridge interface. I (PancakePuppy) have the 100.68.209.0/24 subnet and I’m going to use the first available address for my router. T his is arbitrary – it can be any address that isn’t network (.0) or broadcast (.255).&lt;br /&gt;
[[File:Step 3 - IP Addresses menu.png|thumb|306x306px|RouterOS IP Addresses menu|none]]&lt;br /&gt;
&lt;br /&gt;
Let’s set up the DHCP Server to dynamically configure our hosts. With a protocol. First, open the &#039;&#039;&#039;IP &amp;gt; Pool&#039;&#039;&#039; menu and create a new pool. I’ve made a pool which covers the full remainder of my routed subnet, but you may want to leave some room for statically configured devices.[[File:Step 3 - IP Pool menu.png|thumb|306x306px|RouterOS IP Pool menu|none]]&lt;br /&gt;
&lt;br /&gt;
Open the &#039;&#039;&#039;IP &amp;gt; DHCP Server&#039;&#039;&#039; menu and go to the &#039;&#039;&#039;Networks&#039;&#039;&#039; tab. Create a new network and enter your routed subnet in the Address field, your router IP in Gateway, and whichever DNS servers you wish your hosts to use. I used the CGHMN Core DNS servers. Configure the other options to your preference.[[File:Step 3 - DHCP Networks menu.png|thumb|403x403px|RouterOS DHCP Server Networks menu|none]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the &#039;&#039;&#039;DHCP&#039;&#039;&#039; tab, create a new DHCP server on your routed subnet interface and select the Address Pool we created earlier. With this created, hosts you connect to the specified interface will receive IP addresses, domain name services, and know where to send packets that want to escape the subnet.[[File:Step 3 - DHCP Server menu.png|thumb|317x317px|RouterOS DHCP Server menu|none]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can view DHCP leases assigned by the server and create reservations in the &#039;&#039;&#039;Leases&#039;&#039;&#039; tab.[[File:Step 3 - DHCP Leases menu.png|thumb|476x476px|RouterOS DHCP Leases menu|none]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Add Routes ===&lt;br /&gt;
At this point, if a host sends the router a packet destined for a CGHMN address outside your subnet, it will be dropped. We need to add a few static routes so our router knows where to send CGHMN traffic.&lt;br /&gt;
&lt;br /&gt;
Open the &#039;&#039;&#039;IP &amp;gt; Routes&#039;&#039;&#039; menu. You should see a few entries in the routing table already with a &#039;&#039;&#039;D&#039;&#039;&#039; flag, indicating they were dynamically (automatically) added for us. We will create 3 new routes using the Allowed IPs list to guide us and set Gateway Interface to the WireGuard interface from Step 2, &#039;&#039;wg1&#039;&#039; in this case.[[File:Step 4 - Add Routes.png|thumb|715x715px|RouterOS IP Routes menu|none]]&lt;br /&gt;
&lt;br /&gt;
=== Add Firewall Rules ===&lt;br /&gt;
While it may not be absolutely necessary, I like to have a few basic firewall rules for allowing incoming pings, related and established connections, and blocking everything else. I also want a rule to drop packets arriving from the tunnel interface with a destination address on my home network. I can’t imagine that happening but I’ll cover the possibility anyways.&lt;br /&gt;
[[File:Step 5 - Add Firewall Rules.png|thumb|787x787px|RouterOS Firewall Rules menu|none]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rules are evaluated in ascending numerical order, so make sure your final “deny everything else” rule comes last. Besides just allowing or denying traffic, firewall rules can also be used to log, create address lists, or tarpit connections. Experimenting is part of the fun!&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=How_to_Get_Connected_with_RouterOS&amp;diff=541</id>
		<title>How to Get Connected with RouterOS</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=How_to_Get_Connected_with_RouterOS&amp;diff=541"/>
		<updated>2026-08-29T04:36:21Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: Created page and added content. Version 1, please edit or submit feedback as necessary!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Configure your Internet-Facing Port ===&lt;br /&gt;
This step will look different depending on your router hardware, pre-existing RouterOS configuration, and home network architecture. In my case, I’m using a &#039;&#039;Mikrotik hAP ac2&#039;&#039;, minimal pre-existing settings, and a home network that configures hosts via DHCP.&lt;br /&gt;
[[File:Step 1 - DHCP Client.png|thumb|423x423px|RouterOS DHCP Client menu]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Interface &#039;&#039;ether2&#039;&#039; is used for the connection onto my home network. (You’ll use whatever interface you want on your hardware.) Since this is Mikrotik router hardware with switched Ethernet ports, I will enter the &#039;&#039;&#039;Switch &amp;gt; Port Isolation&#039;&#039;&#039; menu to forward traffic directly to the CPU from &#039;&#039;eth&#039;&#039;&lt;br /&gt;
 &lt;br /&gt;
&#039;&#039;er2&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Step 1 - Port Isolation.png|thumb|442x442px|RouterOS Switch Port Isolation menu]]Enter the &#039;&#039;&#039;IP &amp;gt; DHCP Client&#039;&#039;&#039; menu and create a new DHCP client to configure &#039;&#039;ether2&#039;&#039;. Once a lease is obtained, a default route and interface IP address will be visible in the IP &amp;gt; Routes and IP &amp;gt; Addresses menus respectively. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Configure your WireGuard Tunnel ===&lt;br /&gt;
[[File:Step 2 - WireGuard Interface.png|thumb|393x393px|RouterOS WireGuard menu]]&lt;br /&gt;
For this step, you’ll need your WireGuard connection info from CGHMN User Services, which also require that you’ve generated public and private keys.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Open the &#039;&#039;&#039;WireGuard&#039;&#039;&#039; menu and create a new WireGuard interface. You only need to add your public and private keys in this window and can leave the listen port blank.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Step 2 - WireGuard Peer.png|thumb|459x459px|RouterOS WireGuard Peer menu]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Navigate to the &#039;&#039;&#039;Peers&#039;&#039;&#039; tab and create a new peer. From your CGHMN User Services ‘Welcome’ e-mail, fill in the Public Key, Endpoint and Endpoint Port, Allowed Addresses, Preshared Key, Persistent Keepalive, and Client Address (which is your ‘Tunnel IP’.) Client Keepalive isn’t required but I have it set to 25 seconds. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Configure Your CGHMN Routed Subnet ===&lt;br /&gt;
Next, we’ll set up the routed subnet we were assigned. I’ve configured my subnet to assign addresses to clients with DHCP, which I’ll cover in this section as well.&lt;br /&gt;
&lt;br /&gt;
[[File:Step 3 - Bridge menu.png|thumb|172x172px|RouterOS Bridge menu]]&lt;br /&gt;
[[File:Step 3 - Bridge Ports menu.png|thumb|243x243px|RouterOS Bridge Ports menu]]&lt;br /&gt;
Ports &#039;&#039;ether3&#039;&#039; through &#039;&#039;ether5&#039;&#039; have been added to a bridge named &#039;&#039;cghmn-lan&#039;&#039; in the &#039;&#039;&#039;Bridge&#039;&#039;&#039; menu.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Step 3 - IP Addresses menu.png|thumb|306x306px|RouterOS IP Addresses menu]]&lt;br /&gt;
In the &#039;&#039;&#039;IP &amp;gt; Addresses&#039;&#039;&#039; menu, create a new IP address in your routed subnet for the router to use with the bridge interface. I (PancakePuppy) have the 100.68.209.0/24 subnet and I’m going to use the first available address for my router. T his is arbitrary – it can be any address that isn’t network (.0) or broadcast (.255).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Step 3 - IP Pool menu.png|thumb|306x306px|RouterOS IP Pool menu]]&lt;br /&gt;
Let’s set up the DHCP Server to dynamically configure our hosts. With a protocol. First, open the &#039;&#039;&#039;IP &amp;gt; Pool&#039;&#039;&#039; menu and create a new pool. I’ve made a pool which covers the full remainder of my routed subnet, but you may want to leave some room for statically configured devices.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Step 3 - DHCP Networks menu.png|thumb|403x403px|RouterOS DHCP Server Networks menu]]&lt;br /&gt;
Open the &#039;&#039;&#039;IP &amp;gt; DHCP Server&#039;&#039;&#039; menu and go to the &#039;&#039;&#039;Networks&#039;&#039;&#039; tab. Create a new network and enter your routed subnet in the Address field, your router IP in Gateway, and whichever DNS servers you wish your hosts to use. I used the CGHMN Core DNS servers. Configure the other options to your preference.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Step 3 - DHCP Server menu.png|thumb|317x317px|RouterOS DHCP Server menu]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the &#039;&#039;&#039;DHCP&#039;&#039;&#039; tab, create a new DHCP server on your routed subnet interface and select the Address Pool we created earlier. With this created, hosts you connect to the specified interface will receive IP addresses, domain name services, and know where to send packets that want to escape the subnet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Step 3 - DHCP Leases menu.png|thumb|476x476px|RouterOS DHCP Leases menu]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can view DHCP leases assigned by the server and create reservations in the &#039;&#039;&#039;Leases&#039;&#039;&#039; tab.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Add Routes ===&lt;br /&gt;
At this point, if a host sends the router a packet destined for a CGHMN address outside your subnet, it will be dropped. We need to add a few static routes so our router knows where to send CGHMN traffic.&lt;br /&gt;
&lt;br /&gt;
[[File:Step 4 - Add Routes.png|thumb|715x715px|RouterOS IP Routes menu]]&lt;br /&gt;
Open the &#039;&#039;&#039;IP &amp;gt; Routes&#039;&#039;&#039; menu. You should see a few entries in the routing table already with a &#039;&#039;&#039;D&#039;&#039;&#039; flag, indicating they were dynamically (automatically) added for us. We will create 3 new routes using the Allowed IPs list to guide us and set Gateway Interface to the WireGuard interface from Step 2, &#039;&#039;wg1&#039;&#039; in this case.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Add Firewall Rules ===&lt;br /&gt;
While it may not be absolutely necessary, I like to have a few basic firewall rules for allowing incoming pings, related and established connections, and blocking everything else. I also want a rule to drop packets arriving from the tunnel interface with a destination address on my home network. I can’t imagine that happening but I’ll cover the possibility anyways.&lt;br /&gt;
[[File:Step 5 - Add Firewall Rules.png|thumb|787x787px|RouterOS Firewall Rules menu]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Rules are evaluated in ascending numerical order, so make sure your final “deny everything else” rule comes last. Besides just allowing or denying traffic, firewall rules can also be used to log, create address lists, or tarpit connections. Experimenting is part of the fun!&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_5_-_Add_Firewall_Rules.png&amp;diff=540</id>
		<title>File:Step 5 - Add Firewall Rules.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_5_-_Add_Firewall_Rules.png&amp;diff=540"/>
		<updated>2026-08-29T04:35:24Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RouterOS Firewall Rules menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_4_-_Add_Routes.png&amp;diff=539</id>
		<title>File:Step 4 - Add Routes.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_4_-_Add_Routes.png&amp;diff=539"/>
		<updated>2026-08-29T04:34:04Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RouterOS Routes menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_DHCP_Leases_menu.png&amp;diff=538</id>
		<title>File:Step 3 - DHCP Leases menu.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_DHCP_Leases_menu.png&amp;diff=538"/>
		<updated>2026-08-29T04:30:55Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RouterOS DHCP Leases menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_DHCP_Server_menu.png&amp;diff=537</id>
		<title>File:Step 3 - DHCP Server menu.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_DHCP_Server_menu.png&amp;diff=537"/>
		<updated>2026-08-29T04:30:10Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RouterOS DHCP Server menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_DHCP_Networks_menu.png&amp;diff=536</id>
		<title>File:Step 3 - DHCP Networks menu.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_DHCP_Networks_menu.png&amp;diff=536"/>
		<updated>2026-08-29T04:28:06Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RouterOS DHCP Networks menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_IP_Pool_menu.png&amp;diff=535</id>
		<title>File:Step 3 - IP Pool menu.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_IP_Pool_menu.png&amp;diff=535"/>
		<updated>2026-08-29T04:26:40Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RouterOS IP Pool menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_IP_Addresses_menu.png&amp;diff=534</id>
		<title>File:Step 3 - IP Addresses menu.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_IP_Addresses_menu.png&amp;diff=534"/>
		<updated>2026-08-29T04:25:46Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RouterOS IP Addresses menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_Bridge_Ports_menu.png&amp;diff=533</id>
		<title>File:Step 3 - Bridge Ports menu.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_Bridge_Ports_menu.png&amp;diff=533"/>
		<updated>2026-08-29T04:24:51Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RouterOS Bridge Ports menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_Bridge_menu.png&amp;diff=532</id>
		<title>File:Step 3 - Bridge menu.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_3_-_Bridge_menu.png&amp;diff=532"/>
		<updated>2026-08-29T04:23:58Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RouterOS Bridge menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_2_-_WireGuard_Peer.png&amp;diff=531</id>
		<title>File:Step 2 - WireGuard Peer.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_2_-_WireGuard_Peer.png&amp;diff=531"/>
		<updated>2026-08-29T04:16:46Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;RouterOS WireGuard Peer menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_2_-_WireGuard_Interface.png&amp;diff=530</id>
		<title>File:Step 2 - WireGuard Interface.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_2_-_WireGuard_Interface.png&amp;diff=530"/>
		<updated>2026-08-29T04:13:07Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The RouterOS WireGuard interface configuration menu&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_1_-_DHCP_Client.png&amp;diff=529</id>
		<title>File:Step 1 - DHCP Client.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_1_-_DHCP_Client.png&amp;diff=529"/>
		<updated>2026-08-29T04:09:42Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Shows DHCP Client configuration on RouterOS&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
	<entry>
		<id>https://wiki.cursedsilicon.net/index.php?title=File:Step_1_-_Port_Isolation.png&amp;diff=528</id>
		<title>File:Step 1 - Port Isolation.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.cursedsilicon.net/index.php?title=File:Step_1_-_Port_Isolation.png&amp;diff=528"/>
		<updated>2026-08-29T04:06:53Z</updated>

		<summary type="html">&lt;p&gt;Pancakepuppy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Shows the RouterOS Switch Port Isolation settings&lt;/div&gt;</summary>
		<author><name>Pancakepuppy</name></author>
	</entry>
</feed>