Selles artiklis selgitame, kuidas lahendada hostinimi/domeeninimi Bash -skriptis IPv4- ja IPv6 -aadressiks. Enne skripti loomise jätkamist vaatame siiski läbi mõned käsud, mida saab kasutada hostinime/domeeninime IP -aadressiks muutmiseks.
Ping
Ping on kõige lihtsam ja sisseehitatud tööriist, mis on saadaval peaaegu kõigis operatsioonisüsteemides. Seda kasutatakse, et kontrollida võrgu hosti kättesaadavust. Siiski saame seda kasutada ka IP -aadressi leidmiseks mis tahes hostinime/domeeninime järgi. Sihitud hostinime/domeeninime IP -aadressi leidmiseks kasutage järgmist süntaksit:
$pingsiht-host
Nslookup
Nslookupit kasutatakse laialdaselt, et lahendada hosti nimi IP -aadressiks. Selle käsu kasutamiseks IP otsimisel kasutage järgmist süntaksi:
$nslookup target-host
Host
IP-aadressi leidmiseks mis tahes hostinime/domeeninime järgi saab kasutada mõnda muud käsurea utiliidi hosti. Selle käsu kasutamiseks kasutage järgmist süntaksi:
$host target-host
Sina
Dig on veel üks kasulik käsurea tööriist, mida kasutatakse erinevate DNS -iga seotud kirjete päringute tegemiseks. Seda saab kasutada IP -aadressi leidmiseks mis tahes hostinime/domeeninime järgi. Kasutage käsku Dig järgmisel viisil, et leida IP -aadress konkreetse hostinime/domeeninime järgi.
$sinasiht-host +lühikeBash -skript, et lahendada hosti nimi IP -aadressiks
Bash -skripti kasutamiseks IP -otsinguks toimige järgmiselt.
- Looge bash -fail mis tahes tekstiredaktori abil. Siin kasutan nimega skripti loomiseks Nano redaktorit iplookup.sh .$sudo nanoscript.sh
- Kopeerige ja kleepige skriptifaili järgmised read. Pange tähele, et siin, selles skriptis, määran IP -otsinguks Google'i avaliku DNS -serveri. Saate määrata mis tahes muu DNS -serveri vastavalt oma keskkonnale.# Määrake DNS -server
dnsserver=„8.8.8.8”
# funktsioon IP -aadressi saamiseks
funktsiooniget_ipaddr{
IP-aadress=''
# A- ja AAA -kirjed vastavalt IPv4 ja IPv6 jaoks
# $ Tähistab esimest argumenti
kui [ -n '$ 1' ];siis
hostinimi='{1} dollarit'
kui [ -Koos 'query_type' ];siis
päringu_tüüp='TO'
olla
# kasutage DNS -i otsinguoperatsioonide jaoks hosti käsku
võõrustaja-t $ {query_type} $ {hostname} &> /arendaja/null$ {dnsserver}
kui [ '$?' -ekv '0' ];siis
# saada ip -aadress
IP-aadress='$ (host -t $ {query_type} $ {hostname} $ {dnsserver} | awk '/has.*address/{print $ NF; exit}')'
muidu
väljumine 1
olla
muidu
väljumine 2
olla
# kuva ip
viskas välja $ ip_address
}
hostinimi='{1} dollarit'
eestpäringsisse „A-IPv4” „AAAA-IPv6”;teha
päringu_tüüp='$ (printf $ päring | lõigatud -d- -f 1)'
ipversioon='$ (printf $ päring | lõigatud -d- -f 2)'
aadress='$ (get_ipaddr $ {hostname})'
kui [ '$?' -ekv '0' ];siis
kui [ -n '$ {address}' ];siis
viskas välja 'The$ {ipversion}hostinime aadress$ {hostname}on:$ aadress'
olla
muidu
viskas välja 'Ilmnes viga'
olla
tehtud - Kui olete lõpetanud, kasutage faili salvestamiseks ja väljumiseks klahve Ctrl+O ja Ctrl+X.
- Nüüd, et leida sihitud hostinime/domeeninimega IP -aadress, käivitage skript järgmise süntaksi abil:$./script.sh target-host
Näiteks google.com IP -aadressi lahendamiseks oleks käsk järgmine:
$./iplookup.sh google.comVäljund oleks sarnane sellele:
Samamoodi yahoo.com IP -aadressi lahendamiseks oleks käsk järgmine:
$./iplookup.sh yahoo.comVäljund oleks sarnane sellele:
See on kõik! Selles artiklis oleme õppinud lahendama hosti nime IPv4- ja IPv6 -aadressiks bash -skripti abil. Samuti õppisime mõningaid muid käsurea tööriistu, nagu Ping, Nslookup, Host ja Dig, mida saab kasutada IP-otsingu tegemiseks.