linux域名解析ip
A. 如何在linux中通過命令查看域名對應的IP
實際工作或者維護過程中常常需要通過域名反查下其對應的IP地址。解決方法有多種,既可以通過網上提供的域名反查IP查詢工具查詢,也可以在 Linux系統 中通過命令進行查詢。
本教程主要講解如何在Linux系統中通過命令查看域名對應的IP地址,主要講解以下5個命令:
dig命令它是一個功能強大且靈活的命令行工具,用於查詢 DNS 名稱伺服器。它執行 DNS 查詢,並顯示來自查詢的名稱伺服器的返回信息。大多數 DNS 管理員使用 dig 命令來解決 DNS 問題,因為它靈活、易用且輸出清晰。
如何使用 dig 命令查找域的 IP 地址呢?看示例:
輸出:
當然如果你需要一次查詢多個域名的IP地址,可以通過將多個域名信息放到一個文本文件中,每行一個,然後編寫shell腳本進行讀取文件然後循環批量查詢輸出。
shell腳本命令類似如下:
host 命令可用於執行 DNS 查詢。它通常用於將名稱轉換為 IP 地址,反之亦然。如果未提供任何參數或選項, host 將列印它的命令行參數和選項摘要。
輸出:
同理,可以通過編寫shell腳本實現批量查詢,示例如下:
nslookup 命令是一個用於查詢互聯網域名伺服器(DNS)的程序。
nslookup 有兩種模式,分別是互動式和非互動式。交互模式允許用戶查詢名稱伺服器以獲取有關各種主機和域的信息,或列印域中的主機列表。非交互模式用於僅列印主機或域的名稱和請求的信息。
它是一個網路管理工具,可以幫助診斷和解決 DNS 相關問題。命令示例如下:
輸出:
同理,使用以下 bash 腳本查找多個域的 IP 地址
fping 命令是類似 ping 之類的程序,它使用互聯網控制消息協議(ICMP)echo 請求來確定目標主機是否響應。
fping 與 ping 不同,因為它允許用戶並行 ping 任意數量的主機。另外,它可以從文本文件輸入主機。
fping 發送 ICMP echo 請求,並以循環方式移到下一個目標,並且不等到目標主機做出響應。
如果目標主機答復,那麼將其標記為活動主機並從要檢查的目標列表中刪除;如果目標在特定時間限制和/或重試限制內未響應,那麼將其指定為不可訪問。
fping命令程序並不默認安裝在 Linux發行版 中,一般需要進行安裝,常見的發行版安裝命令如下:
Ubuntu / Debian / LinuxMint
Fedora / CentOS / RHEL
fping默認使用示例:
輸出:
更多關於fping的使用方法可以通過在終端中鍵入 man fping 來學習。
ping 命令(數據包互聯網抓手Packet Internet Groper)是一個網路程序,用於測試 Internet 協議(IP)網路上主機的可用性/連接性。
ping命令通過向目標主機發送互聯網控制消息協議(ICMP)Echo 請求數據包並等待 ICMP Echo 應答來驗證主機的可用性。
它基於發送的數據包、接收的數據包、丟失的數據包,通常包含最小/平均/最大時間來匯總統計結果。
命令示例:
輸出:
我們可以看到輸出內容中起對應的IP地址,如果需要過濾輸出,增加更多相應的命令處理:
輸出:
以上內容為在 Linux系統 中使用5個命令來獲取域名對應的IP地址。建議你可以在自己的伺服器或者自己的Linux同上進行嘗試,也可以通過編寫shell腳本進行批量處理或通過相應的命令對輸出進行處理輸出自己想要的內容。
B. linux 獲取域名ip的方法
有沒有nslookup這個命令?
C. 如果linux雲伺服器沒有公網ip,應該採用哪種方式登錄
當linux伺服器本身無固定公網IP時,在外網是不能直接訪問linux主機的。如需要在外網訪問內網linux,需要利用動態域名解析和埠映射相關的網路輔助實現,如開放的nat123動態域名解析和nat123埠映射。
實現原理
Linux伺服器是動態IP時,需要通過域名動態實時解析到IP,訪問域名方式訪問linux。
無公網IP時,需要利用埠映射方式,將linux訪問埠映射到外網。如SSH訪問埠22映射到外網埠。
動態IP時,外網訪問內網linux的實現
1.在內網啟用nat123動態域名解析。使用自己的訪問域名,或提示自定義域名。
2.如linux主機有經過路由,在路由的轉發規則上做埠映射(22埠)。
3.在外網用ssh訪問時,目標地址是動態解析的域名。
無公網IP時,外網訪問內網linux的實現
1.在內網啟用nat123埠映射。將內網22埠映射為外網自定義埠。
2.映射後,外網地址見映射圖標顯示。
3.在外網用ssh訪問時,目標地址是外網地址域名及自定義的訪問埠。如想使用自己的域名進行訪問,只需要將自己的域名cname記錄指向默認訪問域名即可。
D. 求一個linux shell腳本,把域名解析為ip然後echo出來。
# ./get_ip.sh
./get_ip.sh need a parameter
# ./get_ip.sh e.cn
202.112.0.36
# cat get_ip.sh
#!/bin/sh
if [ $# -lt 1 ]; then
echo $0 need a parameter
exit 0
fi
ADDR=$1
TMPSTR=`ping ${ADDR} packetsize 1 | grep ${ADDR} | head -n 1`
echo ${TMPSTR} | cut -d'(' -f 2 | cut -d')' -f1
E. linux查看域名命令
在linux下可以通過命令查看域名,那麼具體是怎麼操作的呢?下面由我為大家整理了linux下查看域名的命令,希望對大家有所幫助。
1.linux查看域名的命令——ifconfig
Linux查看IP地址的命令--ifconfig
ifconfig命令用於查看和更改網路介面的地址和參數
$ifconfig -a
lo0: flags=849 mtu 8232
inet 127.0.0.1 netmask ff000000
hme0: flags=863 mtu 1500
inet 211.101.149.11 netmask ffffff00 broadcast 211.101.149.255
ether 8:0:20:a7:4d:21
系統會顯示網路介面的名稱,介面的狀態(up or down),
介面的IP地址和掩碼等信息
2.擴展:如何更改網路介面的IP地址
#ifconfig hme0 down
#ifconfig hme0 211.101.149.233 netmask 255.255.255.0 up
首先,使用down命令參數把網路介面hme0的服務暫時停止,然後再用Linux查看ip的ifconfig命令給
介面分配新的IP地址和掩碼,並啟動網路介面服務
也可以通過改變文件/etc/hosts中的IP地址的值並重新啟動系統來更改機器的IP地址。
/etc/hosts/: 211.101.149.11 sampdt
定義主機名在/etc/hostname.hme0及IP地址。
更改了網卡/增加了網卡,系統不能自動啟動該介面服務,這時需要手動創建網口服務:
#ifconfig hme0 plumb
Linux查看ip即可以為介面le0創建網口服務
相應地,用ifconfig帶unplumb參數可以停止服務並關閉網路.
netconfig 用來設置IP地址
F. 在linux中架設web伺服器,如何將域名指向伺服器IP地址
如果是讓自己的機器明白域名和IP的關系,可以修改/etc/hosts文件,如果是要讓其它電腦明白某域名的IP,需要到域名注冊機構注冊。
G. linux 用SSH怎麼查看哪些IP正在訪問伺服器
1、首先連接到Linux主機並進入命令行狀態。
H. 如何在Linux操作系統下配置/etc/hosts文件
1、主機名和IP配置文件
Hosts - The static table lookup for host name(主機名查詢靜態表)
hosts文件是Linux系統中一個負責IP地址與域名快速解析的文件,以ASCII格式保存在「/etc」目錄下,文件名為「hosts」(不同的linux版本,這個配置文件也可能不同。比如Debian的對應文件是/etc/hostname)。
hosts文件包含了IP地址和主機名之間的映射,還包括主機名的別名。在沒有域名伺服器的情況下,系統上的所有網路程序都通過查詢該文件來解析對應於某個主機名的IP地址,否則就需要使用DNS服務程序來解決。
通常可以將常用的域名和IP地址映射加入到hosts文件中,實現快速方便的訪問。
2、配置文件
這個文件可以配置主機ip及對應的主機名,對於伺服器類型的linux系統其作用還是不可忽略的。
在區域網或是INTERNET上,每台主機都有一個IP地址,它區分開每台主機,並可以根據ip進行通訊。
但IP地址不方便記憶,所以又有了域名。在一個區域網中,每台機器都有一個主機名,用於區分主機,便於相互訪問。
Linux主機名的相關配置文件就是/etc/hosts;這個文件告訴本主機哪些域名對應那些ip,那些主機名對應哪些ip:
比如文件中有這樣的定義
192.168.1.100 linumu100 test100
假設192.168.1.100是一台網站伺服器,在網頁中輸入http://linumu100或http://test100就會打開192.168.1.100的網頁。
通常情況下這個文件首先記錄了本機的ip和主機名:127.0.0.1 localhost.localdomain localhost
3、配置文件格式說明
一般/etc/hosts 的內容一般有如下類似內容:
127.0.0.1 localhost.localdomain localhost
192.168.1.100 linmu100.com linmu100
192.168.1.120 ftpserver ftp120
一般情況下hosts文件的每行為一個主機,每行由三部份組成,每個部份由空格隔開。其中#號開頭的行做說明,不被系統解釋。
hosts文件的格式如下:
IP地址 主機名/域名
第一部份:網路IP地址;
第二部份:主機名或域名;
第三部份:主機名別名;
當然每行也可以是兩部份,即主機IP地址和主機名;比如 192.168.1.100 linmu100。
這里可以稍微解釋一下主機名(hostname)和域名(Domain)的區別:主機名通常在區域網內使用,
通過hosts文件,主機名就被解析到對應ip;域名通常在internet上使用,但如果本機不想使用internet上的域名解析,這時就可以更改hosts文件,加入自己的域名解析。
(8)linux域名解析ip擴展閱讀:
hosts文件的作用
1、遠程登錄linux主機過慢問題
有時客戶端想遠程登錄一台linux主機,但每次登錄輸入密碼後都會等很長一段時間才會進入,這是因為linux主機在返回信息時需要解析ip,
如果在linux主機的hosts文件事先加入客戶端的ip地址,這時再從客戶端遠程登錄linux就會變很快。
註:這里所說的遠程登錄不僅僅是ssh,還可能是mysql遠程登錄,或是文件共享的查詢等。
2、雙機互連
當兩台主機只是雙機互連時,這時兩台主機都需要設置自己的ip,同時在對方的hosts文件里加入自己的ip和主機名。
I. linux不能將域名解析成IP地址
這是因為你沒有配置DNS解析伺服器的原因。你的IP大概是靜態設置的,設置後,要增加DNS伺服器地址。不同版本的LINUX有不同的方法。一般來說,比如你的網卡是 eth0,則會有/etc/sysconfig/network-scripts/ifcfg-eth0這個文件,編輯這個文件,在DNS1=這一行,添加你的DNS伺服器的IP地址。如果你不知道DNS地址,也可以使用公共的DNS伺服器:114.114.114.114
然後執行重啟網路命令:
/etc/init.d/network restart
或者直接reboot,重啟系統。
或者如果你安裝了配置命令:system-config-network 也可以運行這個命令,在DNS Configure裡面,填上Primary DNS地址。
當然,如果你的linux有圖形界面,你也可以使用圖形的方式,找到網路配置,在裡面找到DNS這一項,添加進去就行了。