замена ip при редиректе через captive portal



  • pfsense 2.0.1, LAN IP сервера 192.168.1.1, на нём поднят captive portal.
    юзер набирая в поисковой строке ya.ru редиректится на страницу аутентификации, но вместо ожидаемого
    http://192.168.1.1:8000/index.php?redirurl=http%3A%2F%2Fya.ru%2F
    видит
    http://213.180.204.3:8000/index.php?redirurl=http%3A%2F%2Fya.ru%2F
    213.180.204.3 - ya.ru

    люди, кто-нибудь сталкивался с этим?



  • Отключите captive portal на всех интерфейсах кроме lan. Или попробуйте поменять на другой, а потом вернуть снова на lan



  • проблема решена, просто на глаза попался пост, может кому пригодится…
    Данная необычная ситуация возникает, при таких условиях:
    1 - есть некий LAN интерфейс, описанный как 192.168.1.1/24
    2 - этот интерфес подключён к умному маршрутизатору 192.168.1.2/24
    3 - умный маршрутизатор раздаёт разным клиентам разные адреса из других подсетей, например 192.168.2.0/24, 192.168.3.0/24
    4 - дорога к клиентам обозначена как static route в удалённые подсети, через гейт 192.168.1.2

    в такой ситуации pfsense пытается выбрать ip сервера по ip клиента, через функцию arp_get_mac_by_ip($ip)
    и это успешно получается, но только при условии что клиент находится в одной подсети с интерфейсом сервера(static routes не проверяется).

    в итоге, получается что маршрутизация работает отлично, а captive_portal с изюминкой))
    решено добавлением в arp_get_mac_by_ip($ip) проверки по статическим маршрутам.


Locked