hostapd + dnsmasq + firewalld 방식 | 인터넷 포워딩 포함
| 항목 | 값 |
|---|---|
| OS | Ubuntu 24 (최신) |
| 유선 인터페이스 | enp4s0 (192.168.0.19) |
| 무선 인터페이스 | wlp6s0 |
| 핫스팟 IP | 10.0.0.1/24 |
| SSID | HOTSPOT |
| DHCP 범위 | 10.0.0.50 ~ 10.0.0.150 |
| 방화벽 | firewalld (ufw 비활성화) |
sudo apt install hostapd dnsmasq iptables-persistent
⚠️ ufw와 firewalld 동시 사용 금지
sudo systemctl stop ufw
sudo systemctl disable ufw
파일: /etc/network/interfaces
auto wlp6s0
iface wlp6s0 inet static
address 10.0.0.1
netmask 255.255.255.0
파일: /etc/hostapd/hostapd.conf
interface=wlp6s0
driver=nl80211
ssid=HOTSPOT
hw_mode=g
channel=6
wmm_enabled=0
macaddr_acl=0
auth_algs=1
wpa=2
wpa_passphrase=비밀번호
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
아래 줄 주석 해제:
DAEMON_CONF="/etc/hostapd/hostapd.conf"
sudo systemctl enable hostapd
sudo systemctl start hostapd
파일: /etc/dnsmasq.conf
interface=wlp6s0
dhcp-range=10.0.0.50,10.0.0.150,12h
bind-interfaces
server=8.8.8.8
⚠️ 포트 53 충돌 시 port=0 추가 (DNS 비활성화)
sudo systemctl enable dnsmasq
sudo systemctl start dnsmasq
sudo firewall-cmd --zone=internal --add-interface=wlp6s0 --permanent
sudo firewall-cmd --zone=internal --add-service=dhcp --permanent
sudo firewall-cmd --zone=internal --add-service=dns --permanent
sudo firewall-cmd --zone=internal --add-masquerade --permanent
sudo firewall-cmd --zone=public --add-masquerade --permanent
sudo firewall-cmd --reload
파일: /etc/sysctl.conf 에서 아래 줄 주석 해제
net.ipv4.ip_forward=1
sudo sysctl -p
sudo iptables -I FORWARD 1 -i wlp6s0 -o enp4s0 -j ACCEPT
sudo iptables -I FORWARD 2 -i enp4s0 -o wlp6s0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo netfilter-persistent save
⚠️ netfilter-persistent save 안하면 재부팅 후 룰 사라짐
sudo systemctl status hostapd
sudo systemctl status dnsmasq
ip addr show wlp6s0
sudo firewall-cmd --zone=internal --list-all
sudo iptables -L FORWARD -n -v
sudo journalctl -u dnsmasq -f
sudo tcpdump -i wlp6s0 port 67 or port 68 # DHCP 요청 확인
우분투 WiFi 핫스팟 설정 메모 | hostapd + dnsmasq + firewalld
댓글목록
등록된 댓글이 없습니다.