Enjoy Slackware 15.0!

Welcome to the Slackware Documentation Project

Build A Slackware Router (Quick and Dirty Instructions)

On many occasions, I've needed a simple router that can do more [sub-netting] than your standard SOHO router but didn't need the complexity of something like pfSense. If you need a simple small router, a Raspberry Pi (with USB network adapters) + SlackwareARM (http://sarpi.fatdog.eu) works great. Regular Slackware on cheap x86 hardware works great also!

How to do it

1) Install Slackware/SlackwareARM and make sure you have at least TWO network interfaces. For our examples:

  • ETH0 will be the WAN NIC
  • ETH1 & WLAN0 will be the LAN

2) Setup the WAN network interface as DHCP [client] or STATIC IP (as needed) and the LAN(s) as static IPs. (We'll address setting up a DHCP server on the LAN further down).


 sudo chmod 755 /etc/rc.d/rc.ip_forwarding

NOTE: I've had this not work in the past. What ALWAYS works is:

vi /etc/rc.d/rc.firewall


echo 1 > /proc/sys/net/ipv4/ip_forward

4) Enable masquerading:

vi /etc/rc.d/rc.firewall


iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

If you reboot at this point, you'll have a very basic working router.

Adding niceties

DHCP server on the LANs

You can set up DHCPD (included in Slackware) but using DNSMasq is SOOOOO much easier:

vi /etc/dnsmasq.conf



port=0 disables DNS function and only allows DHCPD.
interface specifies which interfaces to listen to for DHCP requests.
dhcp-range specifies the DNS range start IP and end IP and the lease time.
dhcp-option=6,x.x.x.x specifies a DNS server IP to pass to connected clients.

Then enable DNSMasq:

chmod 755 /etc/rc.d/rc.dnsmasq

Firewall tricks

So much you can do here. Do a web search on iptable rules.

One useful rule is- DISABLE SMB/NETBIOS requests through the router:

iptables -A INPUT -p udp --destination-port 130:145 -i eth0 -j DROP


In Other Languages
Translations of this page?:
QR Code
QR Code howtos:misc:slackware_router_-_quick_and_dirty (generated for current page)