Использование Lua Как разбить заданный IP-адрес, чтобы получить минимальный и максимальный диапазон, например:Slplit IPv4 адрес минимального и максимального диапазона
94.19.21.119
У меня есть CSV-файл, как это:
18087936,18153471,"AU"
18153472,18219007,"JP"
18219008,18350079,"IN"
18350080,18874367,"CN"
то будет читать 3 таблицы и CSV является мин, макс, код страны:
IPfrom = {}
IPto = {}
IPCountry = {}
они получают заселена, как это:
IPfrom[18087936] = L
IPto[L] = 18153471
IPCountry[L] = "AU"
с L является номером строки io.read то, что Im то пытается сделать, это получить минимальный диапазон, так что я могу без зацикливания чек, если он существует, то, если он этот ключ имеет индекс максимальный диапазон, и если ip находится в пределах min/max, я получаю код страны. Вероятно, это отличный способ сделать что-то, кроме таблиц более 100000 записей, поэтому цикл занимает некоторое время.
Какое значение минимальное и максимальное значение? У вас есть связанная сетевая маска с этим IP-адресом? –
Привет, что я пытаюсь сделать, это получить «минимум» и «максимум», чтобы затем перекрестно ссылаться на csv, чтобы получить код страны, csv выглядит так: «16777216», «17367039», «US " –
@Col_Blimp Пример в вашем комментарии не имеет отношения к примеру в вашем вопросе. Измените свой вопрос, чтобы добавить пример со входом и ожидаемым. –