TsgcWebSocketFirewall › Metodi › LoadGeoIPDatabase
Carica in memoria un database CSV MaxMind GeoIP in modo che le successive chiamate a LookupCountry e il filtraggio basato sul paese GeoIP possano risolvere gli IP dei client offline.
procedure LoadGeoIPDatabase(const aFileName: string);
| Nome | Tipo | Descrizione |
|---|---|---|
aFileName | const string | Percorso di un file CSV GeoIP. Formato atteso per riga: start_ip,end_ip,country_code. Sono supportati intervalli sia IPv4 che IPv6. |
Chiamare LoadGeoIPDatabase una volta all'avvio — tipicamente prima che il server vada in linea — in modo che l'indice di ricerca venga costruito in anticipo e i successivi controlli di connessione non si blocchino sull'I/O del disco. Il caricamento è cumulativo: chiamarlo di nuovo unisce un altro file all'indice corrente. Se si preferisce la risoluzione al volo (ad esempio tramite una libreria di terze parti o un servizio web), lasciare il database non caricato e gestire invece OnResolveCountry. Il filtraggio GeoIP è attivo solo quando GeoIP.Enabled è True e la lista dei paesi è popolata.
sgcWebSocketFirewall1.GeoIP.Enabled := True;
sgcWebSocketFirewall1.GeoIP.Mode := gmBlockList;
sgcWebSocketFirewall1.GeoIP.Countries.Add('CN');
sgcWebSocketFirewall1.LoadGeoIPDatabase('geoip.csv');