Jeśli zakresy adresów IP nie nakładają się, więc zapytanie nigdy nie zwróci więcej niż 1 wiersz, możesz użyć tego:
SELECT q.*
FROM
( SELECT csv.*
FROM csv
WHERE csv.begin < 3338456592
ORDER BY csv.begin DESC
LIMIT 1
) AS q
WHERE 3338456592 < q.end ;
Nie trzeba dodawać żadnego indeksu. Zostanie użyty indeks główny.