İnternet Servis Sağlayıcımın adını bir komut dosyasında kullanmak istiyorum ve bunu nasıl yapabilirim bilmiyorum.
Lütfen bana yardım edin, şimdiden teşekkürler.
İnternet Servis Sağlayıcımın adını bir komut dosyasında kullanmak istiyorum ve bunu nasıl yapabilirim bilmiyorum.
Lütfen bana yardım edin, şimdiden teşekkürler.
Yanıtlar:
ISS adınızı bulmak için sağlanan birçok web sitesini kullanabilirsiniz. Bunlardan biri whoismyisp .
İnternet servis sağlayıcınızın adını almak için bash betiğinde bu siteyi benzer bir şeyle elde edebilirsiniz curl
.
curl -s https://www.whoismyisp.org | grep -oP -m1 '(?<=isp">).*(?=</p)'
Ayrıca bu komutla istediğiniz IP’lerin ISS’lerini bulabilirsiniz:
curl -s https://www.whoismyisp.org/ip/xxx.xxx.xxx.xxx | grep -oP -m1 '(?<=isp">).*(?=</p)'
Bu xxx.xxx.xxx.xxx
, ISS'sini bulmak istediğiniz IP'dir.
Ek bilgi : IP'nizi bu komutla bash yoluyla bulabilirsiniz (bu, komut dosyaları için yararlı olabilir):
dig +short myip.opendns.com @resolver1.opendns.com
curl ipinfo.io/org
. Yok-az-ben hem cevap hem de soru oy verdi çünkü hepsi iyi :)
curl ipinfo.io/org
, AS'nin tam adını vermedi , ancak verdi curl -s ipinfo.io/ASxxx | grep as-name
:)
Ortak IP’nizi belirlemek için , örneğin sağlayıcı firma adı gibi bazı ek bilgileri de içeren ipinfo.io hizmetlerini kullanabilirsiniz .
Site tarayıcınızda normal olarak ziyaret edilebilir, ancak örneğin komut satırından sorguladığınızda curl
, temiz ve iyi tanımlanmış bir JSON biçiminde yanıt verir, böylece herhangi bir HTML'yi ayrıştırmanıza gerek kalmaz:
$ 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"
}
Yalnızca bir değer göstermek için, doğrudan ilgili yola bir istek gönderebilirsiniz. Örneğin ISS adı ( org
) için şunu deneyin:
curl ipinfo.io/org
Bu cevaptan ilham aldım .
İlk önce Özerk Sistem numarasını aldım:
$ curl -s ipinfo.io/org
AS2094 Renater
Sonra AS'nin tam adını alıyorum:
$ curl -s ipinfo.io/$(curl -s ipinfo.io/org | cut -d "" -f1) | awk '/ isim olarak / {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
AS852 TELUS Communications Inc.
. Yukarıdaki seçenek 2, hiçbir şey döndürmez. Kabul edilen cevap, Byte'ın cevabının sınırlı bir versiyonu olan ancak yine de iyi olan kullanır curl -s https://www.whoismyisp.org | grep -oP '\bisp">\K[^<]+'
ve geri döner Telus Communications
. Bu, YMMV'nin (Kilometreniz Değişebilir) cevaplarından biridir.
ipinfo.org
veri koleksiyonundakilere bağlı. Benim için curl -s ipinfo.io/org
verir AS3320 Deutsche Telekom AG
iken curl -s ipinfo.io/AS3320 | grep as-name
verir DTAG
(bir süre sonra). Ayrıca, ikincisi yine HTML çıktısını ayrıştırıyor (hataya eğilimli!). Bu yüzden ByteCommander'ın cevabına sadık kalacağım.
AS3320
aynısını alıyorum DTAG
. Ama Kanada’yı kullanırsanız merak ediyorum curl -s ipinfo.io/AS852 | grep as-name
benim gibi boş çıktılar.
curl -s ipinfo.io/org
IP'ye curl -s ipinfo.io/AS3320
dayalı verileri verirken verilen parametreye dayalı verileri döndürür (isteğin IP'sini dikkate almaz). Neyse. HTML'yi uygun bir ayrıştırıcı olmadan ayrıştırmak neredeyse her zaman kötü bir fikirdir. Bunu biliyor musunuz ünlü cevabı üzerine yığın taşması ? Okumak eğlenceli.