Пакеты сбрасываются с помощью iptables
Я пытаюсь создать точку доступа к программному обеспечению в Linux.
Я следил за блогом здесь.
Шаги, которые я выполнил:
- Запустил dhcp сервер на wlan0.
- Правильно настроенный hostapd.conf
- Включена переадресация пакетов и маскировка.
Две команды, выполненные в отношении iptables:
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface wlan0 -j ACCEPT
Я включил регистрацию на iptables и получаю это в everything.log
Jun 29 19:42:03 MBP-archlinux kernel: [10480.180356] IN=eth0 OUT=wlan0 MAC=c8:bc:c8:9b:c4:3c:00:13:80:40:cd:80:08:00 SRC=195.143.92.150 DST=10.0.0.3 LEN=44 TOS=0x00 PREC=0x00 TTL=52 ID=38025 PROTO=TCP SPT=80 DPT=53570 WINDOW=46185 RES=0x00 ACK URGP=0
Jun 29 19:42:03 MBP-archlinux kernel: [10480.389102] IN=eth0 OUT=wlan0 MAC=c8:bc:c8:9b:c4:3c:00:13:80:40:cd:80:08:00 SRC=195.143.92.150 DST=10.0.0.3 LEN=308 TOS=0x00 PREC=0x00 TTL=52 ID=14732 PROTO=TCP SPT=80 DPT=53570 WINDOW=46185 RES=0x00 ACK PSH URGP=0
Jun 29 19:42:03 MBP-archlinux kernel: [10480.389710] IN=eth0 OUT=wlan0 MAC=c8:bc:c8:9b:c4:3c:00:13:80:40:cd:80:08:00 SRC=195.143.92.150 DST=10.0.0.3 LEN=44 TOS=0x00 PREC=0x00 TTL=52 ID=14988 PROTO=TCP SPT=80 DPT=53570 WINDOW=46185 RES=0x00 ACK FIN URGP=0
Jun 29 19:42:03 MBP-archlinux kernel: [10480.621118] IN=eth0 OUT=wlan0 MAC=c8:bc:c8:9b:c4:3c:00:13:80:40:cd:80:08:00 SRC=195.143.92.150 DST=10.0.0.3 LEN=44 TOS=0x00 PREC=0x00 TTL=52 ID=63378 PROTO=TCP SPT=80 DPT=53570 WINDOW=46185 RES=0x00 ACK FIN URGP=0
Я почти ничего не знаю о iptables, все, что я делал, это через поиск в Google. Итак, кто-нибудь может помочь мне понять, что здесь происходит не так?
Я попытался запустить tcpdump на wlan0 и HTTP-пакеты отправляются с wlan0.
1 ответ
Решение
Вы разрешаете пересылку только из wlan0 в интернет.
Попробуйте добавить:
iptables --append FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
для того, чтобы принять ответ на перенаправленный трафик