บันทึกปริมาณการใช้งานสำหรับแอปพลิเคชันเฉพาะ


12

ฉันมีแอปพลิเคชั่นที่สื่อสารกับเซิร์ฟเวอร์บางตัว ฉันต้องการทราบว่า IP ของเซิร์ฟเวอร์นี้คืออะไร ฉันจะจับการรับส่งข้อมูลทั้งหมดจากแอปพลิเคชันเฉพาะและไม่ใช่เฉพาะการรับส่งข้อมูลทั้งหมดอย่าง Wireshark ได้อย่างไร


คุณใช้ระบบปฏิบัติการอะไร คุณรู้จักแอปพลิเคชั่นมากแค่ไหน? คุณรู้หรือไม่ว่าใช้พอร์ตเฉพาะ
James Polley

Windows Server 2008 R2 / Windows 7 ฉันไม่รู้อะไรเลยเกี่ยวกับหมายเลขพอร์ต เป็นการรับส่งข้อมูล IP (TCP / UDP)
melco-man

1
ดังนั้นเพื่อชี้แจง คุณต้องการดู ID กระบวนการอย่างน้อยที่สุด แต่บางอย่างเช่น netstat-aon จะไม่ทำเพราะคุณต้องการเห็นความพยายามในการเชื่อมต่อที่ไม่สำเร็จ (ฉันไม่รู้อะไรเลยและคุณจะโชคดีถ้ามีคนทำ แต่คุณช่วยอธิบายได้ไหมว่านั่นคือสิ่งที่คุณต้องการ?)
barlop

คุณรู้หรือไม่ว่าแอปพลิเคชันจะพยายามเชื่อมต่อกับที่ใด ฉันคิดว่าคุณสามารถใช้ wireshark และใช้ตัวกรองเพื่อเจาะลึกไปยังโฮสต์ / IP ปลายทางได้หรือไม่
emtunc

นอกจากนี้ขึ้นอยู่กับประเภทของแอปพลิเคชันที่เป็นคุณสามารถบังคับให้ผ่านพร็อกซีและใช้สิ่งที่ชอบพู้ทำเล่นเพื่อจับภาพการรับส่งข้อมูลของแอปพลิเคชันนั้น ไม่เคยลอง แต่ไม่สามารถดูได้ว่าทำไมมันไม่ทำงาน อาจง่ายเหมือนการเปลี่ยนการตั้งค่าพร็อกซี IE เป็นพร็อกซี่พู้ทำเล่น (พอร์ต 8888 โดยค่าเริ่มต้น) หรือยากเท่าการรวบรวมแอพใหม่เพื่อใช้พร็อกซีหรือบังคับให้แอปใช้พร็อกซี - อย่างใด ที่สามารถทำได้
emtunc

คำตอบ:


3

สามารถจับภาพการรับส่งข้อมูลเครือข่ายทั้งหมดสำหรับแอปพลิเคชันที่กำหนดได้โดยการสกัดกั้นการเรียก Windows Sockets API นี่คือเครื่องมือที่อาจช่วยได้

  1. Proxocketเขียนโดย Luigi Auriemma มันขัดขวางการเรียก API และบันทึกทราฟฟิกที่บันทึกไว้เป็นไฟล์. CAP แบบ Wireshark พร้อมในรูปแบบ tcpdump ไม่มีอะไรจะอธิบายได้มากไปกว่ารูปภาพของ Luigi เอง:ภาพหน้าจอ

  2. NirSoft มีแอปพลิเคชั่นSocketSniffซึ่งช่วยให้สามารถบันทึกปริมาณการใช้งานของกระบวนการเฉพาะได้ รูปภาพมีค่าหนึ่งพันคำเช่นกัน:ภาพหน้าจอ

น่าเสียดายที่เครื่องมือที่กล่าวถึงอาจไม่รองรับแอปพลิเคชัน 64 บิต อย่างไรก็ตามเป็นไปได้ที่จะเขียน interceptor ที่กำหนดเองโดยใช้mhook library ที่รองรับทั้ง 32- บิตและ 64- บิต API


+1 สำหรับเครื่องมือฟรีแวร์ของ NirSoft ที่ดีอย่างเหลือเชื่อและมักพกพาได้ (ไฟล์เดียว. exe) และเล็ก (<500 KB) นักพัฒนาที่มีความสามารถมากที่นั่น!
Basj

2

Microsoft Network Monitorอาจอนุญาตให้คุณพูดว่า "จับเฉพาะแพ็กเก็ตที่ส่งไปยังและจากแอปพลิเคชันนี้"


-1 สำหรับคำตอบที่คลุมเครือและคาดเดาได้เป็นส่วนใหญ่
Cylindric

1

วิธีที่ง่ายที่สุดที่จะใช้คือ Fiddler 2 มันเป็นตัวดีบั๊กที่ช่วยให้คุณสามารถดูคำขอ HTTP, HTTPS และ FTP (ทั้งคู่หากกำหนดค่าไว้) ด้วยแอปพลิเคชันใด ๆ บนพีซีของคุณ

หลังจากคุณติดตั้งแล้วในการกำหนดเป้าหมายแอปพลิเคชันเฉพาะให้คลิกรายการเมนู " กระบวนการใด ๆ " ค้างไว้จากนั้นลากเคอร์เซอร์ไปที่หน้าต่างที่เปิดและปล่อย มันจะแสดงเฉพาะแอปพลิเคชันเป้าหมายนั้นจนกว่าคุณจะคลิกขวาที่รายการเมนูที่อ่านกระบวนการที่กำหนดเป้าหมายเป็นข้อความสีแดงเพื่อปล่อย

http://fiddler2.com/


วิธีใช้ Fiddler สำหรับคำขอ HTTP / FTP ที่ไม่ใช่
Pacerier

0

บน windows TCPViewควรทำสิ่งที่คุณต้องการ: มันสามารถแสดงการเชื่อมต่อ TCP และ UDP ทั้งหมดที่โปรแกรมเฉพาะเปิดอยู่

อย่างไรก็ตามฉันคิดว่านี่จะเป็นประโยชน์หากโปรแกรมกำลังเปิดการเชื่อมต่อและเปิดทิ้งไว้ พวกเขาจะไม่แสดงการรับส่งข้อมูลเครือข่ายทั้งหมดให้คุณโดยโปรแกรมเฉพาะ ยกตัวอย่างเช่นเป็นไปได้ที่จะทำการโทรหาโทรศัพท์บ้านโดยสังเขปขณะทำการโหลด แต่การเชื่อมต่อจะหายไปเมื่อคุณเรียกใช้ TCPView

การตรวจสอบกระบวนการอาจช่วยในการรับรายละเอียดมากขึ้น แต่ฉันไม่ได้ใช้มันดังนั้นฉันไม่แน่ใจว่ามันจับเกี่ยวกับซ็อกเก็ตเครือข่ายมากแค่ไหน


4
TCPView จะช่วยในการเชื่อมต่อที่สร้างไว้แล้วเท่านั้น ฉันต้องเห็นความพยายามในการเชื่อมต่อ TCP ที่ไม่สำเร็จ
melco-man

1
ในกรณีนี้ฉันไม่ได้คิด อาจเพิ่มมูลค่าให้กับคำถามว่า
James Polley

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.