- Поиск, проверка наличия подсети в текстовом файле по IP, Виктор, 01:54 , 23-Апр-18 (1)
> Имеется некий IP, пусть будет 8.8.8.8. Имеется текстовый файл с длинным списком > подсетей с различными длинами префикса, к примеру, /12, /15, /24. Возможно > ли написать какой-то хитрый grep, который бы проверял есть ли среди > этих подсетей та, в которую входит нужный нам IP, допустим, упомянутый > 8.8.8.8/32? Может на Perl-е что-то или ещё на чём? Если кто > знает, то, просьба, привести пример такого скрипта.например на php: $host = "192.168.22.66" $subnet_string = "192.168.22.0/24"; $ip_arr = explode("/", $subnet_string); $subnet_addr = $ip_arr[0]; $mask_bits = $ip_arr[1]; $host_bits = 32 - $mask_bits; $num_hosts = pow(2, $host_bits) - 1; $host_long = ip2long($host); $subnet_long = ip2long($subnet_addr) if ($host_long >= $subnet_long && $host_long <= $subnet_long + $num_hosts) { echo "Found host in subnet" }
- Поиск, проверка наличия подсети в текстовом файле по IP, Seryoga2014, 10:55 , 23-Апр-18 (3)
- Поиск, проверка наличия подсети в текстовом файле по IP, ыы, 11:22 , 23-Апр-18 (4)
- Поиск, проверка наличия подсети в текстовом файле по IP, Виктор, 14:21 , 23-Апр-18 (7) +1
> Забудьте обо всем этом. в приведенном кусте кода есть несколько опечаток (намеренных? > :) что приведет к невозможности его выполнения. И это будет непреодолимым > препятствием для вас. > Плюс к тому же этот код- концепт который вам надо дописать по > месту...Не специально. Я взял старый кусок и немного дорисовал до его задач... Ну да, пропустил несколько ";"... Я ж не думал, что он настолько безголовый, что имея код, разложенный по полочкам и не сможет разобраться.
- Поиск, проверка наличия подсети в текстовом файле по IP, Seryoga2014, 14:07 , 24-Апр-18 (10)
- Поиск, проверка наличия подсети в текстовом файле по IP, Виктор, 15:45 , 24-Апр-18 (11)
> В php я полный 0, вообще представления не имею что да как > там. Что-то делаю только в bash, немного знаю sed, awk, но > и тут не мегагуру - иначе не задавал бы вопросов. > У меня совершенно другого рода образование, работа - языки программирования я > не изучал нигде и по работе они мне не нужны. Делать > выводы про безголовость ничего не зная про меня - это 5 > баллов, спасибо.Простите, но приведенный код это сплошные арифметические операции... Тут и знать нечего. Максимум, что вам там может быть непонятно, это explode(), pow() и ip2long(), гуглится в 2 минуты.
- Поиск, проверка наличия подсети в текстовом файле по IP, Виктор, 14:26 , 23-Апр-18 (8)
> Прошу пардона, я совсем не в теме как можно запускать php из > bash? WEB-сервера у меня нет, только консоль.Точно так же, как и Perl. PHP в этом плане ничем не отличается. > И мне нужно проверять file.txt с длинным списком подсетей > - как его туда подставить? Пример строчки в bash можно? Я вам дал общий алгоритм разбора подсети и поиска в ней искомого хоста... Адаптация на вас, за бесплатно я вашу работу для вас делать не буду.
- Поиск, проверка наличия подсети в текстовом файле по IP, fantom, 12:08 , 23-Апр-18 (5) +1
- Поиск, проверка наличия подсети в текстовом файле по IP, xm, 13:17 , 23-Апр-18 (6)
- Поиск, проверка наличия подсети в текстовом файле по IP, Филимон Вдумчивый, 20:40 , 23-Апр-18 (9)
- Поиск, проверка наличия подсети в текстовом файле по IP, михалыч, 06:47 , 30-Апр-18 (13)
|