Virtual server clients collision
Hi, i have two (and more) virtual servers. Each server has own business logic, port and defined separate clients. I completely use SQL modules. Clients are stored in database. I have one client using two different freeradius virtual server First for ppp. Second for login into device. Adding client into NAS 1 : rlm_sql (overovani_sql): Read entry nasname=192.168.1.10,shortname=rb1_pentagon::wlan1::192.168.1.10,secret=heslo rlm_sql (overovani_sql): Adding client 192.168.1.10 (rb1_pentagon::wlan1::192.168.1.10, server=overovani) to clients list Adding client into NAS 2: lm_sql (auth_cernovice_net_sql): Read entry nasname=192.168.1.10,shortname=rb1_pentagon::wlan1::192.168.1.10,secret=cernovice_net_nas_device rlm_sql (auth_cernovice_net_sql): Adding client 192.168.1.10 (rb1_pentagon::wlan1::192.168.1.10, server=auth_cernovice_net) to clients list Failed to add duplicate client rb1_pentagon::wlan1::192.168.1.10 rlm_sql (auth_cernovice_net_sql): Released sql socket id: 4 rlm_sql (auth_cernovice_net_sql): Failed to add client 192.168.1.10 (rb1_pentagon::wlan1::192.168.1.10) to clients list. Maybe there's a duplicate? Virtual server name in debug message is right. I think, clients are shared between virtual servers. Clients aren`t duplicates. Clients has different passwords and are placed within different virtual servers. How I get separate client list? Regards, Stanislav Lorenc
Stanislav Lorenc wrote:
i have two (and more) virtual servers. Each server has own business logic, port and defined separate clients.
Not exactly. Virtual servers can have related ports and clients, but they don't have their own ports and clients.
I completely use SQL modules. Clients are stored in database.
The clients in SQL are *global* clients. They're not tied to a particular listener.
Failed to add duplicate client rb1_pentagon::wlan1::192.168.1.10 rlm_sql (auth_cernovice_net_sql): Released sql socket id: 4 rlm_sql (auth_cernovice_net_sql): Failed to add client 192.168.1.10 (rb1_pentagon::wlan1::192.168.1.10) to clients list. Maybe there's a duplicate?
Because you can't have two clients with the same IP address.
Virtual server name in debug message is right.
That doesn't matter. The virtual server in the debug message doesn't mean what you think it means. It means that when the global listener receives a packet from that client, it's routed to the named virtual server. It does *not* tie the client to the listener used by that virtual server.
I think, clients are shared between virtual servers.
The clients in the DB are global.
Clients aren`t duplicates. Clients has different passwords and are placed within different virtual servers. How I get separate client list?
Source code patches. Alan DeKok.
participants (2)
-
Alan DeKok -
Stanislav Lorenc