Jump to content
Калькуляторы

Как использовать утилиту whois?

Не подскажите, как использовать эту утилиту, где примеры посмотреть?

РКН развоевался и я решил прикрутить к своему скрипту, который забирает выгрузки, получение информации о подсети, как минимум org-name.

Пакет установил, но с использованием не разберусь - иногда информации нет или она выводится иначе.

В идеале нужно, чтобы утилита сама подключалась к нужной БД и выводила только запрошенную информацию.

Share this post


Link to post
Share on other sites

whois 123.3.2.1 | grep something

 

Но оно у каждого RIR в своем формате. :-(

Share this post


Link to post
Share on other sites

Вот такой сервер есть:

https://www.team-cymru.com/IP-ASN-mapping.html


 

Цитата

 

whois -h v4.whois.cymru.com "8.8.8.8"    
AS        | IP                 | AS Name
15169   | 8.8.8.8          | GOOGLE - Google LLC, US

 

whois -h v4.whois.cymru.com " -f 8.8.8.8"

15169   | 8.8.8.8          | GOOGLE - Google LLC, US

 

whois -h v4.whois.cymru.com " -p 8.8.8.8"
AS        | IP                 | BGP Prefix          | AS Name
15169   | 8.8.8.8          | 8.8.8.0/24          | GOOGLE - Google LLC, US

 

 

 

Но правда не знаю, можно ли его использовать под автоматизацию

Share this post


Link to post
Share on other sites

#!/bin/bash
while read line4 ; do
 IFS=/ read ip mask <<< ${line4}
 hm=$(ipcalc -bn $line4|awk '/^HostMin: / {print $2}')
 wi=$(whois ${hm}|grep "^OrgName\|^Country\|^CIDR"|awk '{print $2}'|tr "\n" " ")
 if [ "x$wi" == "x" ] ; then
 wi=$(whois ${hm}|grep "^netname\|^country\|^route"|awk '{print $2}'|tr "\n" " ")
 fi
 echo "$net/$mask : ${wi}"
done < spisok_setey.txt

 

Share this post


Link to post
Share on other sites

16 часов назад, Urs_ak сказал:

Но правда не знаю, можно ли его использовать под автоматизацию

Пока вроде бы не блокируют, спасибо за наводку.

Хотя нет. Какие-то лимиты есть, через некоторое время очень медленные отклики.

Share this post


Link to post
Share on other sites

На том сервере рекомендуют использовать пакетный режим:

netcat whois.cymru.com 43 < list01 | sort -n > list02

Но на CentOS нет netcat, вместо него есть socat.

Я делаю так:

socat OPEN:list-whois.txt TCP:whois.cymru.com:43

Но ничего в ответ не получаю.

Если включить дебаг, то видно, что считывается текстовый файл и отправляется в сокет, но далее тишина.

То ли ответ возвращается в файл (канал то двухсторонний), то ли в какой-нибудь лог-файл улетает.

Никто с socat не сталкивался? Как его использовать аналогично первой команде?

Share this post


Link to post
Share on other sites

netcat - это утилита nc

 

Есть ещё такой сервер, про тоже самое:

https://www.shadowserver.org/wiki/pmwiki.php/Services/IP-BGP

 

Там пакетный режим работает:
 

Цитата

 

list01:

begin origin
68.22.187.5
207.229.165.18
198.6.1.65
end

 

nc asn.shadowserver.org 43 < list01

68.22.187.5 | 23028 | 68.22.187.0/24 | TEAM-CYMRU | US | Team Cymru Inc., US
207.229.165.18 | 6079 | 207.229.128.0/18 | RCN-AS | US | RCN, US
198.6.1.65 | 701 | 198.6.0.0/16 | UUNET | US | MCI Communications Services, Inc. d/b/a Verizon Business, US


 

 

Share this post


Link to post
Share on other sites

nc в CentOS тоже нет.

Share this post


Link to post
Share on other sites

Скажу по другому - я бы хотел с socat разобраться.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now