BTC
ETH
SOL
BNB
GOLD
XRP
DOGE
ADA
Back to home
Tech

Build your own Dial-up ISP with a Raspberry Pi

Russian hackers in the 90s dialed into corporate networks at 56Kbps.

Russian hackers in the 90s dialed into corporate networks at 56Kbps. Today, you can replicate that era’s dial-up ISP on a Raspberry Pi for under $210. Connect your vintage gear—like a 1999 iBook G3 clamshell with its original modem—and give it “internet” access on your local network. No POTS lines required; a $120 phone line simulator fakes the ring and connection handshake.

This setup revives old Macs for #MARCHintosh challenges or retro gaming nets. The iBook G3, Apple’s first Wi-Fi laptop via the $99 AirPort card, topped out at 11Mbps shared—often half in practice. But most users in 1999 tethered to AOL dial-up at 33-56Kbps. Original AirPort Base Stations packed a 56K modem and 10Mbps Ethernet for broadband rarities. Hackers emulated this locally: Pi as server, USB modem as ISP endpoint, simulator bridging the analog gap.

Hardware Breakdown

Core components total $205:

Connections: USB modem to Pi. Phone cord from modem to simulator’s “Line 1.” Client modem (iBook’s internal or external) to “Line 2.” Add a bell phone across for authentic rings—debug gold when modems screech errors.

Skeptical note: Real POTS emulation isn’t plug-and-play. Voltage mismatches fry modems; DLE-200B’s defaults work 90% of the time, but test with multimeter (48VDC loop on-hook). Total power draw: <10W. Runs 24/7 on a $10 UPS.

Software Setup

Pi runs Raspberry Pi OS (Debian-based). Install mgetty for modem control and pppd for IP handoff:

sudo apt update
sudo apt install mgetty ppp

Config /etc/mgetty+sendfax/login.config for auto-PPP:

/AutoPPP/ - a /etc/ppp/peers/dialup /etc/ppp/chap-secrets

/etc/ppp/peers/dialup:

plugin pppoe.so  # No, for dial-up it's serial
/dev/ttyUSB0 115200
connect '/usr/sbin/chat -v -f /etc/chatscripts/gprs'
noauth
local
192.168.1.1:192.168.1.100
ms-dns 192.168.1.1  # Pi's DNS
defaultroute
usepeerdns

Blacklist modem from ModemManager: echo ‘ATTRS{idVendor}==”1c9e”‘ > /etc/udev/rules.d/99-usbmodem.rules. Reboot.

Client dials “ATDT 1234” (mgetty listens on any ring). Negotiates V.42bis compression, connects at 46.7Kbps effective. Pi assigns 192.168.1.100/24; route traffic to your LAN. Add dnsmasq for fake “aol.com” resolving to Pi services—host local web, gopher, or BBS.

Tweaks: Set init strings for error correction (AT&F&C1&D2&S0=0). Real-world throughput: 4-5KB/s sustained. Latency <50ms local.

Why It Matters

This isn’t nostalgia porn—it’s practical retro networking. Emulators like QEMU fake hardware but skip modem physics: phase jitter, line noise, retrains. Real iron teaches PPP CHAP auth, PAP pitfalls (insecure plaintext), V.90 fallback cascades. Security angle: Dial-up’s raw serial exposes everything; sniff with Wireshark on Pi’s eth0.

Costs beat commercial PBX gateways ($500+). Scale to multi-line with USB hubs (up to 4 modems/Pi). Implications for air-gapped labs: Test 90s exploits on authentic stacks. Or build private vintage nets—iBook G3 browses your NextCloud at “broadband” 5KB/s.

Fair critique: Why not Wi-Fi bridging? AirPort’s 802.11b joins Pi’s AP directly at 5-8Mbps. But dial-up forces era-correct slowness; perfect for Usenet mirrors or DOOM servers. Expands to VoIP PBX next—Asterisk + FXS ports for $50. Total project: 2 hours setup, endless tinkering. If vintage Macs gather dust, this justifies the shelf space.

April 3, 2026 · 3 min · 16 views · Source: Lobsters

Related