2012-04-18 100 views
2

我希望識別發出DNS請求的進程。看着查詢給了我一個線索,但並沒有幫助我確定確切的過程。識別DNS請求的PID源(Windows XP)

我可以在Wireshark中看到本地端口號,但請求太短而無法被TCPView接收。

是否有一個記錄工具,它會捕獲DNS請求和PID?

回答

4

Process Monitor Sysinternals會給你你想要的。將捕獲限制爲網絡活動,您將看到活動以及PID和進程名稱。該操作將是UDP發送和路徑將讀取像這樣:pc-host-name:端口 - > dns服務器:域(注意:「域」指示端口53爲DNS)。進程名稱和PID將在左側。

起初我打算推薦使用Netmon 3.4(來自Microsoft),因爲這將顯示進程名稱和pid(pid需要添加爲列)。但是,這似乎對我來說很麻煩,因爲大多數流量沒有使用進程名稱/ pid進行標記。我不確定爲什麼會出現這種情況,但它可能適用於您。

+0

在Windows上,大多數DNS查詢都是由svchost.exe中託管的DNS客戶端服務完成的,所以它不會真正幫助您知道哪個進程實際進行了網絡操作。我不知道是否有任何日誌可以找出誰發起了請求。 – Djof 2014-12-22 22:20:18

+0

@Djof您可以嘗試停止「DNS客戶端」服務。之後,我相信,您將能夠看到正在生成DNS查詢的原始可執行文件。它在Windows 7上爲我工作過一次。 – Alex 2017-11-09 19:19:47