iptables не регистрирует трафик WAN?

позвольте мне начать с указания моей конечной цели: когда трафик поступает на определенный IP-адрес, если сервер не включен, включите его с Wake On Lan. Я использую маршрутизатор TP-Link Archer C7 v2 с DD-WRT, установленный со сборкой r30709.

  • WOL работает
  • запись трафика LAN на порт работает (через правило iptables)
  • пинг сервер из сценария, чтобы увидеть, если на после разбора для записи пользовательского журнала работает
  • отправка WOL работ из script
  • протоколирование трафика WAN делает не работа (через правило iptables)

теперь из того, что я видел о DD-WRT, много людей, похоже, создают VLAN, когда они делают что-то подобное. Мой маршрутизатор основан на Atheros, и DD-WRT предположительно не поддерживает VLAN для маршрутизаторов Atheros, хотя многие люди, похоже, работают на этом маршрутизаторе (они не публикуют инструкции в интернете).

так что я в настоящее время исследую способ установки порт на маршрутизаторе сервер подключен по себе влан, но пока не повезло.

вот мои два правила iptables:

#this works
iptables -I FORWARD -i br0 -p tcp --dport 32400 -m state --state NEW -j LOG --log-prefix "PLEX LAN Connection "

# this does not work 
iptables -I FORWARD -i eth0 -p tcp --dport 32400 -m state --state NEW -j LOG --log-prefix "PLEX WAN Connection "

# this does not work either (dd-wrt.com says vlan2 is the WAN interface)
iptables -I FORWARD -i vlan2 -p tcp --dport 32400 -m state --state NEW -j LOG --log-prefix "PLEX WAN Connection "

это то, что можно исправить только с помощью iptables? Потому что я не могу заставить iptables регистрировать входящие WAN-соединения на этом порту в /var/log / messages. Я предположил, что это не запись в журнал, потому что он не сидит на своей собственной VLAN.

обновление 1

Пожалуйста, обратите внимание, я пытался использовать eth0 вместо vlan2, но тот же результат: надА в журнал. Я даже удалил -i <interface> все вместе в обоих правилах, но никогда ничего на WAN трафике.

root@DD-WRT:~# ip a
root@DD-WRT:~# ip ro
default via pu.bl.ic.1 dev eth0
pu.bl.ic.0/24 dev eth0  proto kernel  scope link  src pu.bl.ic.ip
127.0.0.0/8 dev lo  scope link
169.254.0.0/16 dev br0  proto kernel  scope link  src 169.254.255.1
192.168.1.0/24 dev br0  proto kernel  scope link  src 192.168.1.1

согласно сайту DD-WRT,vlan2 должен представлять логический интерфейс для глобальной сети.

обновление 2

я заметил, что IP-адрес назначения неверен. Должен идти к 192.168.1.2 но это.будет 192.168.0.10. Это не допустимая локальная сеть все:

Oct  4 20:47:35 DD-WRT kern.warn kernel: [114429.460000] PLEX LAN Connection IN=br0 OUT=eth0 MAC=XXXXXXXXXXXXXXXXXXX SRC=192.168.1.133 DST=192.168.0.10 LEN=60 TOS=0x00 PREC=0x00 TTL=63 ID=45163 DF PROTO=TCP SPT=4644

попытался это как единственное правило за предложение ниже:

iptables -A FORWARD -p tcp --dport 32400 -m limit --limit 50/min -j LOG --log-prefix "CHECK INTERFACES"

по-прежнему ничего в журнале; перестали регистрировать подключения LAN тоже.

обновление 3

root@DD-WRT:/tmp/var/log# iptables -t nat -L -n -v
Chain PREROUTING (policy ACCEPT 2742 packets, 395K bytes)
 pkts bytes target     prot opt in     out     source               destination
   13   764 DNAT       tcp  --  *      *       0.0.0.0/0            pu.bl.ic.ip       tcp dpt:14619 to:192.168.1.2:32400
    0     0 DNAT       icmp --  *      *       0.0.0.0/0            pu.bl.ic.ip       to:192.168.1.1
    4   232 DNAT       tcp  --  *      *       0.0.0.0/0            pu.bl.ic.ip       tcp dpt:22709 to:192.168.1.2:32400
  220 19942 TRIGGER    0    --  *      *       0.0.0.0/0            pu.bl.ic.ip       TRIGGER type:dnat match:0 relate:0

Chain INPUT (policy ACCEPT 30145 packets, 2802K bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 253 packets, 21491 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain POSTROUTING (policy ACCEPT 260 packets, 21863 bytes)
 pkts bytes target     prot opt in     out     source               destination
 1065 67674 SNAT       0    --  *      eth0    192.168.1.0/24       0.0.0.0/0           to:pu.bl.ic.ip
   10   624 MASQUERADE  0    --  *      *       0.0.0.0/0            0.0.0.0/0           mark match 0x80000000/0x80000000
29
задан Nathan
28.02.2023 7:40 Количество просмотров материала 3675
Распечатать страницу

2 ответа

Я не могу добавить комментарий к superuser, так что это ответ. Вы можете подтвердить, что сервис работает, что вы к нему доступ из LAN или WAN ?

вы используете скрипт iptables или просто выполняете команду в bash отдельно ? Если у вас нет сценария iptables, как сказал Cybernard, вы должны убедиться, что ваша строка журнала до принятия.

Как только пакет принят или отброшен, он покидает цепочку, поэтому никогда не будет соответствовать правилу журнала, расположенному позже в цепь.

например, чтобы вставить правило журнала как первое в прямой цепочке:

iptables -I FORWARD 1 -p tcp --dport 32400 -m limit --limit 50/min -j LOG --log-prefix "CHECK INTERFACES"
1
отвечен Sanael 2023-03-01 15:28

пожалуйста, обратите внимание, что ip на интерфейсе WAN будет pre nat поэтому маршрутизатор может быть целью, даже если пакет пересылается. вот что бы я сделал:

iptables -I INPUT -p any -i <wan interface> -j LOG --log-prefix "FIREWALL-WAN"
iptables -I FORWARD -p any -i <wan interface> -j LOG --log-prefix "FIREWALL-WAN"

где находится интерфейс с wan ip. обычно я просто бросаю wan trafic, а затем разрешаю то, что хочу, поэтому на самом деле я бы этого не делал.

0
отвечен Pere Noel 2023-03-01 17:45

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх