bash 스크립트를 사용하여 ISP (Internet Service Provider)를 어떻게 찾을 수 있습니까? 서비스 제공 업체의

인터넷 서비스 제공 업체의 이름을 스크립트에 사용하고 싶습니다. 어떻게해야하는지 모르겠습니다.

미리 감사드립니다.



답변

ISP 이름을 찾기 위해 제공된 많은 웹 사이트를 사용할 수 있습니다. 그들 중 하나는 whoismyisp 입니다.

그리고 ISP 이름을 얻으려면 bash 스크립트에서 다음과 같은 방법 으로이 사이트를 얻을 수 있습니다 curl.

curl -s https://www.whoismyisp.org | grep -oP -m1 '(?<=isp">).*(?=</p)'

또한이 명령으로 원하는 IP의 ISP를 찾을 수 있습니다.

curl -s https://www.whoismyisp.org/ip/xxx.xxx.xxx.xxx | grep -oP -m1 '(?<=isp">).*(?=</p)'

그게 전부는 xxx.xxx.xxx.xxxIP 당신은 그것의 ISP를 찾으려는 것이다.


추가 정보 :이 명령을 사용하여 bash로 IP를 찾을 수 있습니다 (스크립트에 도움이 될 수 있음).

dig +short myip.opendns.com @resolver1.opendns.com


답변

예를 들어 ipinfo.io 의 서비스를 사용 하여 공급자 회사 이름과 같은 추가 정보를 포함하여 공개 IP를 결정할 수 있습니다.

사이트는 일반적으로 브라우저에서 방문 할 수 있지만, 예를 들어 명령 줄에서 사이트를 쿼리하면 curl깨끗하고 잘 정의 된 JSON 형식으로 응답하므로 HTML을 구문 분석 할 필요가 없습니다.

$ curl ipinfo.io
{
  "ip": "xxx.xxx.xxx.xxx",
  "hostname": "xxxxxxxxxxxxxxxxxxxxxxxxxxx.xx",
  "city": "xxxxxxxx",
  "region": "xxxxxxxxxx",
  "country": "xx",
  "loc": "xxx.xxxx,xxx.xxxx",
  "org": "xxxxxxxxxxxx",
  "postal": "xxxxx"
}

하나의 값만 표시하기 위해 해당 경로로 직접 요청을 보낼 수 있습니다. 예를 들어 ISP 이름 ( org)으로 다음을 시도하십시오.

curl ipinfo.io/org

이 답변에서 영감을 얻었습니다 .


답변

먼저 자율 시스템 번호를 가져옵니다.

$ curl -s ipinfo.io/org
AS2094 Renater

그런 다음 해당 AS의 전체 이름을 가져옵니다.

$ curl -s ipinfo.io/$(curl -s ipinfo.io/org | cut -d “”-f1) | awk ‘/ as-name / {print $ NF}’

$ whois $(curl -s ipinfo.io/org | cut -d" " -f1) | awk -F: 'BEGIN{IGNORECASE=1}/(as-?name|org-?name):/{sub("^  *","",$2);print$2}'
FR-TELECOM-MANAGEMENT-SUDPARIS
Renater


답변