במאמר זה נסביר כיצד לפתור שם מארח/שם דומיין לכתובת IPv4 ו- IPv6 בסקריפט Bash. עם זאת, לפני שנמשיך ביצירת התסריט, הבה נסקור כמה מהפקודות שניתן להשתמש בהן כדי לפתור את שם המארח/שם הדומיין לכתובת IP.
פינג
פינג הוא הכלי הפשוט והמובנה ביותר הזמין כמעט בכל מערכות ההפעלה. הוא משמש לאימות ההגעה של מארח ברשת. עם זאת, אנו יכולים להשתמש בה גם כדי למצוא את כתובת ה- IP כנגד כל שם מארח/שם תחום. השתמש בתחביר הבא כדי למצוא את כתובת ה- IP של שם מארח/שם תחום ממוקד:
$פינגיעד-מארח
Nslookup
Nslookup נמצא בשימוש נרחב לפתרון שם המארח לכתובת IP. על מנת להשתמש בפקודה זו לחיפוש IP, השתמש בתחביר הבא:
$יעד-מארח nslookup
מנחה
ניתן להשתמש במארח שירות שורת פקודה נוסף לאיתור כתובת IP כנגד כל שם מארח/שם תחום. על מנת להשתמש בפקודה זו, השתמש בתחביר הבא:
$מארח יעד-מארח
אתה
Dig הוא כלי שימושי נוסף לשורת הפקודה המשמש לשאילתות של רשומות שונות הקשורות ל- DNS. ניתן להשתמש בה כדי למצוא כתובת IP כנגד כל שם מארח/שם תחום. השתמש בפקודת Dig בדרך הבאה כדי למצוא כתובת IP נגד שם מארח/שם תחום ספציפי.
$אתהיעד-מארח +קצרסקריפט Bash לפתרון שם מארח לכתובת IP
על מנת להשתמש בסקריפט bash לחיפוש IP, בצע את השלבים הבאים:
- צור קובץ bash באמצעות כל עורך טקסט. כאן אשתמש בעורך ננו ליצירת תסריט בשם iplookup.sh .$סודו ננוscript.sh
- העתק והדבק את השורות הבאות בקובץ הסקריפט שלך. שים לב, כאן בסקריפט זה, אני מציין את שרת ה- DNS הציבורי של Google לחיפוש IP. תוכל לציין כל שרת DNS אחר בהתאם לסביבתך.# ציין שרת DNS
dnsserver='8.8.8.8'
פונקציה # לקבל כתובת IP
פוּנקצִיָהget_ipaddr{
כתובת ה - IP=''
# רשומה A ו- AAA עבור IPv4 ו- IPv6, בהתאמה
# $ 1 מייצג טיעון ראשון
אם [ -n '$ 1' ];לאחר מכן
שם מארח='$ {1}'
אם [ -עם 'סוג שאילתה' ];לאחר מכן
סוג שאילתה='ל'
לִהיוֹת
# השתמש בפקודת מארח לפעולות חיפוש DNS
מנחה-ט $ {query_type} $ {hostname} &> /dev/ריק$ {dnsserver}
אם [ '$?' -משווה '0' ];לאחר מכן
# קבל כתובת IP
כתובת ה - IP='$ (host -t $ {query_type} $ {hostname} $ {dnsserver} | awk '/has.*address/{print $ NF; יציאה}')'
אַחֵר
יְצִיאָה 1
לִהיוֹת
אַחֵר
יְצִיאָה 2
לִהיוֹת
# ip תצוגה
זרק $ ip_address
}
שם מארח='$ {1}'
לשאילתאב 'A-IPv4' 'AAAA-IPv6';לַעֲשׂוֹת
סוג שאילתה='$ (שאילתה printf $ | גזור -d- -f 1)'
ipversion='$ (שאילתה printf $ | גזור -d- -f 2)'
כתובת='$ (get_ipaddr $ {hostname})'
אם [ '$?' -משווה '0' ];לאחר מכן
אם [ -n '$ {address}' ];לאחר מכן
זרק 'ה$ {ipversion}כתובת שם המארח$ {hostname}הוא:כתובת $'
לִהיוֹת
אַחֵר
זרק 'התרחשה שגיאה'
לִהיוֹת
בוצע - לאחר שתסיים, השתמש ב- Ctrl+O ו- Ctrl+X כדי לשמור ולצאת מהקובץ בהתאמה.
- כעת כדי למצוא כתובת IP נגד שם מארח/שם תחום ממוקד, הפעל את הסקריפט באמצעות התחביר הבא:$./script.sh יעד-מארח
לדוגמה, כדי לפתור את כתובת ה- IP של google.com, הפקודה תהיה:
$./iplookup.sh google.comבאופן דומה, לפתרון כתובת ה- IP של yahoo.com, הפקודה תהיה:
$./iplookup.sh yahoo.comזה כל מה שיש בו! במאמר זה למדנו לפתור את שם המארח לכתובת IPv4 ו- IPv6 באמצעות סקריפט bash. למדנו גם כמה כלי שורת פקודה אחרים כגון Ping, Nslookup, Host ו- Dig שניתן להשתמש בהם לביצוע חיפוש IP.