---
title: "아무 컴퓨터나 리눅스 라우터로 만드는 방법 — 전자폐기물도 가능"
published: 2026-03-30T13:28:54.000Z
canonical: https://jeff.news/article/1390
---
# 아무 컴퓨터나 리눅스 라우터로 만드는 방법 — 전자폐기물도 가능

미국의 라우터 수입 규제를 계기로 리눅스 미니PC나 구형 노트북 등 아무 컴퓨터나 라우터로 만드는 방법을 정리한 가이드. Debian + hostapd + dnsmasq + nftables 조합으로 ~250개 패키지만으로 완전한 라우터를 구성할 수 있다.

- 미국 정부가 새 소비자용 라우터 수입을 사실상 금지하는 정책을 발표한 상황에서, **아무 컴퓨터나 리눅스 라우터로 만드는 방법**을 정리한 글
  - 저자 본인도 리눅스 미니PC를 라우터로 수년간 써왔고, 유일한 문제는 $20짜리 mSATA 드라이브 수명 다한 것뿐이었다고
  - 미니PC, 데스크톱, SBC, 랙마운트 서버, 구형 노트북 — 리눅스 돌아가고 USB 포트 몇 개 있으면 다 됨

> [!NOTE]
> 저자가 강조하는 건 이게 미국 정책에 대한 "해결책"이 아니라는 거임. 이미 갖고 있는 하드웨어로 라우터를 만들 수 있다는 걸 보여주는 "neat hack"이라는 취지.

## 하드웨어 — 진짜 아무거나 됨

- 이상적으로는 패시브 쿨링 미니PC가 좋지만, 저자가 실제로 쓴 장비들이 웃김
  - **Celeron 3205U 듀얼코어 1.5GHz** — 이 허접한 칩으로도 유선 LAN 820-850Mbps, 무선 ~300Mbps 처리 가능
  - 2016년에는 **쓰레기통에서 주워온 ThinkPad T60**에 ExpressCard-PCIe 브리지로 이더넷 카드 꽂고, $10짜리 Cisco 2960 스위치, 중고매장에서 건진 WAN 포트 고장난 D-Link 공유기를 조합해서 라우터로 썼음
  - 본인도 "쓰레기 더미처럼 보이지만 완벽하게 작동했다"고 인정

## 네트워크 구성

- 인터페이스 3개로 구성: `eth0`(WAN), `eth1`(유선 LAN), `wlan0`(무선 LAN)
  - 유선/무선 LAN은 브릿지로 묶어서 같은 네트워크로 통신
  - USB 이더넷 동글 여러 개 꽂아서 포트 확장도 가능 (속도는 좀 느리지만)
- 필요한 패키지가 놀라울 정도로 적음 — **총 ~250개 패키지**면 끝
  - `hostapd` (Wi-Fi AP), `dnsmasq` (DNS/DHCP), `bridge-utils` (포트 브릿징)
  - Debian 기본 설치 + 이 3개면 라우터 완성

## 핵심 설정 과정

- **인터페이스 이름 고정** — `enp0s31f6` 같은 현대식 이름 대신 `ethX` 형태로 고정
  - `/etc/systemd/network/` 밑에 MAC 주소 기반 `.link` 파일 생성

- **hostapd로 Wi-Fi AP 생성** — USB Wi-Fi 동글을 AP 모드로 사용
  - 전용 AP 기기만큼 성능은 안 나오지만, 10m 이내 소규모 환경에서는 충분
  - 성능이 중요하면 구형 공유기를 AP 전용으로 쓰는 것도 방법

- **nftables로 방화벽 + NAT 구성** — iptables 대신 nftables 사용
  - NAT, 외부 인바운드 트래픽 차단, DNS/DHCP/SSH 서버 허용이 기본 룰셋
  - `nft -c -f` 로 설정 파일 검증 후, **서비스 중단 없이 `systemctl reload`로 룰셋 갱신** 가능

> [!TIP]
> nftables는 iptables와 달리 `systemctl reload nftables.service`로 룰셋을 무중단 갱신할 수 있음. 라우터 운영 중 방화벽 규칙 바꿀 때 세션 끊길 걱정 없음.

- **dnsmasq로 DNS + DHCP 한방에 해결**
  - 기존에 `isc-dhcp-server` + `bind9` 조합 대신 dnsmasq 하나로 대체
  - 설정 파일이 극도로 단순함 — DHCP 범위, 게이트웨이, DNS 서버, 캐시 사이즈 정도만 지정

## 보너스 및 확장

- 시리얼 포트가 있으면 콘솔 접속 설정 추천 — 모니터/키보드 없이 관리 가능
  - GRUB 설정에 시리얼 콘솔 추가하고 Getty 서비스 활성화하면 됨
- 기본 라우터 완성 후 추가 가능한 것들
  - VLAN 세그멘테이션, VPN 원격접속, BGP 등 동적 라우팅, IDS/IPS, 포트포워딩
  - 다만 저자는 라우터에 소프트웨어 잔뜩 설치하는 건 비추하고, DMZ나 VLAN에 별도 장비로 트래픽 포워딩하는 걸 권장

---

## 기술 맥락

- 이 글에서 nftables를 쓰는 건 의미 있는 선택이에요. iptables는 규칙 하나 바꿀 때마다 전체 체인을 다시 로드해야 하는 구조인데, nftables는 atomic하게 룰셋을 교체할 수 있거든요. 라우터처럼 24/7 돌아가는 장비에서 방화벽 규칙 바꿀 때 세션 끊김 없이 reload할 수 있다는 건 운영상 큰 차이예요.

- dnsmasq를 bind9 + isc-dhcp-server 대신 고른 것도 실용적인 판단이에요. 엔터프라이즈 환경에서는 bind9의 zone 관리나 DNSSEC 같은 기능이 필요하지만, 가정용 라우터에서는 오버스펙이거든요. dnsmasq는 DNS 캐시 + DHCP를 설정 파일 몇 줄로 끝낼 수 있어서 유지보수 부담이 거의 없어요.

- 브릿지 구성으로 유선/무선 LAN을 하나로 묶는 방식은 가장 단순한 홈 네트워크 토폴로지예요. VLAN으로 분리하면 보안은 좋아지지만 복잡도가 올라가니까, 저자가 "기본은 단순하게, 확장은 나중에"라는 접근을 취한 거죠. 실제로 대부분의 상용 가정용 공유기도 내부적으로 이 브릿지 구조를 쓰고 있어요.

- Celeron 1.5GHz로 800Mbps 이상 처리할 수 있다는 건, 패킷 포워딩이 CPU 집약적이지 않다는 걸 보여줘요. 병목은 보통 암호화(VPN)나 DPI 같은 부가 기능에서 생기지, 순수 라우팅 자체는 아주 가벼운 작업이에요.

## 핵심 포인트

- Celeron 1.5GHz로도 유선 820Mbps 처리 가능 — 라우팅 자체는 매우 가벼운 작업
- hostapd + dnsmasq + bridge-utils + nftables 4개 패키지가 핵심
- nftables는 iptables와 달리 무중단 룰셋 갱신 가능
- VLAN·VPN·BGP·IDS 등으로 확장 가능하나 라우터에 직접 설치보다 DMZ 분리 권장

## 인사이트

라우터가 결국 리눅스 컴퓨터라는 걸 실제 전자폐기물 조합으로 증명한 글. 네트워크 인프라를 블랙박스로 쓰는 대신 직접 구성해보면 NAT·방화벽·DHCP의 동작 원리를 체감할 수 있음.
