ในบทความนี้ เราจะอธิบายวิธีแก้ไขชื่อโฮสต์/ชื่อโดเมนเป็นที่อยู่ IPv4 และ IPv6 ในสคริปต์ทุบตี อย่างไรก็ตาม ก่อนดำเนินการสร้างสคริปต์ ให้เราตรวจสอบคำสั่งบางอย่างที่สามารถใช้เพื่อแก้ไขชื่อโฮสต์/ชื่อโดเมนเป็นที่อยู่ IP
ปิง
Ping เป็นเครื่องมือที่ใช้งานง่ายที่สุดและมีอยู่ในระบบปฏิบัติการเกือบทั้งหมด ใช้เพื่อตรวจสอบความสามารถในการเข้าถึงของโฮสต์ในเครือข่าย อย่างไรก็ตาม เรายังสามารถใช้เพื่อค้นหาที่อยู่ IP กับชื่อโฮสต์/ชื่อโดเมนใดก็ได้ ใช้ไวยากรณ์ต่อไปนี้เพื่อค้นหาที่อยู่ IP ของชื่อโฮสต์/ชื่อโดเมนที่เป็นเป้าหมาย:
$ปิงเป้าหมายโฮสต์
Nslookup
Nslookup ใช้กันอย่างแพร่หลายในการแก้ไขชื่อโฮสต์เป็นที่อยู่ IP ในการใช้คำสั่งนี้สำหรับการค้นหา IP ให้ใช้ไวยากรณ์ต่อไปนี้:
$nslookup target-host
เจ้าภาพ
คุณสามารถใช้โฮสต์ยูทิลิตีบรรทัดคำสั่งอื่นเพื่อค้นหาที่อยู่ IP กับชื่อโฮสต์/ชื่อโดเมนใดก็ได้ ในการใช้คำสั่งนี้ ให้ใช้ไวยากรณ์ต่อไปนี้:
$host target-host
คุณ
Dig เป็นเครื่องมือบรรทัดคำสั่งที่มีประโยชน์อีกตัวหนึ่งที่ใช้ในการสืบค้นระเบียนที่เกี่ยวข้องกับ DNS ต่างๆ สามารถใช้เพื่อค้นหาที่อยู่ IP กับชื่อโฮสต์/ชื่อโดเมนใดๆ ใช้คำสั่ง Dig ด้วยวิธีต่อไปนี้เพื่อค้นหาที่อยู่ IP เทียบกับชื่อโฮสต์/ชื่อโดเมนเฉพาะ
$คุณtarget-host +shortสคริปต์ทุบตีเพื่อแก้ไขชื่อโฮสต์เป็นที่อยู่ IP
ในการใช้สคริปต์ทุบตีสำหรับการค้นหา IP ให้ทำตามขั้นตอนด้านล่าง:
- สร้างไฟล์ทุบตีโดยใช้โปรแกรมแก้ไขข้อความ ที่นี่ฉันจะใช้ตัวแก้ไขนาโนเพื่อสร้างสคริปต์ชื่อ iplookup.sh .$sudo นาโนscript.sh
- คัดลอกและวางบรรทัดต่อไปนี้ในไฟล์สคริปต์ของคุณ โปรดทราบว่าในสคริปต์นี้ ฉันกำลังระบุเซิร์ฟเวอร์ DNS สาธารณะของ Google สำหรับการค้นหา IP คุณสามารถระบุเซิร์ฟเวอร์ DNS อื่น ๆ ตามสภาพแวดล้อมของคุณ# ระบุเซิร์ฟเวอร์ DNS
dnsserver='8.8.8.8'
# ฟังก์ชั่นเพื่อรับที่อยู่ IP
การทำงานget_ipadr{
ที่อยู่ IP=''
# บันทึก A และ AAA สำหรับ IPv4 และ IPv6 ตามลำดับ
# $1 ย่อมาจากอาร์กิวเมนต์แรก
ถ้า [ -NS '$ 1' ];แล้ว
ชื่อโฮสต์='$ {1}'
ถ้า [ -กับ 'query_type' ];แล้ว
query_type='ถึง'
เป็น
# ใช้คำสั่งโฮสต์สำหรับการดำเนินการค้นหา DNS
เจ้าภาพ-NS ${query_type} ${ชื่อโฮสต์} &> /dev/โมฆะ$ {dnsserver}
ถ้า [ '$?' -eq '0' ];แล้ว
#รับไอพีไอพี
ที่อยู่ IP='$(host -t ${query_type} ${hostname} ${dnsserver}| awk '/has.*address/{print $NF; exit}')'
อื่น
ทางออก 1
เป็น
อื่น
ทางออก 2
เป็น
#แสดงip
โยนออก $ip_address
}
ชื่อโฮสต์='$ {1}'
สำหรับแบบสอบถามใน 'A-IPv4' 'AAAA-IPv6';ทำ
query_type='$(printf $query | cut -d- -f 1)'
ipversion='$(printf $query | cut -d- -f 2)'
ที่อยู่='$(get_ipadr ${ชื่อโฮสต์})'
ถ้า [ '$?' -eq '0' ];แล้ว
ถ้า [ -NS '${ที่อยู่}' ];แล้ว
โยนออก 'NS${ipversion}ที่อยู่ของชื่อโฮสต์${ชื่อโฮสต์}เป็น:$ที่อยู่'
เป็น
อื่น
โยนออก 'เกิดข้อผิดพลาด'
เป็น
เสร็จแล้ว - เมื่อเสร็จแล้ว ให้ใช้ Ctrl+O และ Ctrl+X เพื่อบันทึกและออกจากไฟล์ตามลำดับ
- ตอนนี้เพื่อค้นหาที่อยู่ IP เทียบกับชื่อโฮสต์/ชื่อโดเมนเป้าหมาย ให้เรียกใช้สคริปต์โดยใช้ไวยากรณ์ต่อไปนี้:$./script.sh target-host
ตัวอย่างเช่น ในการแก้ไขที่อยู่ IP ของ google.com คำสั่งจะเป็นดังนี้:
$./iplookup.sh google.comในทำนองเดียวกัน ในการแก้ไขที่อยู่ IP ของ yahoo.com คำสั่งจะเป็น:
$./iplookup.sh yahoo.comนั่นคือทั้งหมดที่มีให้! ในบทความนี้ เราได้เรียนรู้วิธีแก้ไขชื่อโฮสต์เป็นที่อยู่ IPv4 และ IPv6 โดยใช้สคริปต์ทุบตี นอกจากนี้เรายังได้เรียนรู้เครื่องมือบรรทัดคำสั่งอื่นๆ เช่น Ping, Nslookup, Host และ Dig ที่สามารถใช้ในการค้นหา IP ได้