จะรับบันทึกเครือข่าย linux ได้อย่างไร


14

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

เราสงสัยว่าอาจเป็นไปได้ว่ามีคนจำนวนมากที่พยายามในเวลาเดียวกันและพวกเขาก็ตกหล่นในระดับระบบปฏิบัติการดังนั้นโปรแกรมจาวาไม่เคยได้รับโอกาสที่จะยอมรับการเชื่อมต่อจริงหรือ มีการจัดเรียงของ linux บางอย่างที่สามารถแสดงว่ามีคนพยายามที่จะเข้าถึงซ็อกเก็ตหรือไม่?

คำตอบ:


8

iptables -I INPUT -p tcp --dport some_port -j LOGแล้ว
tail -f /var/log/messages
หลังจากนั้นเพื่อดูว่าข้อมูลที่ได้รับผลกระทบจากกฎที่: iptables -L -n -v
หรือคุณสามารถเรียกใช้ tcpdump และ grep ออกพอร์ต


2
+1 iptables -I INPUT -p tcp --dport some_port -m state --state NEWปรับเปลี่ยนเล็กน้อยอาจทำงานได้ดีกว่าที่จะจับได้เป็นเพียงความพยายามในการเชื่อมต่อใหม่: โปรดทราบว่าหากคุณไม่สนใจรายละเอียดของการเชื่อมต่อแต่ละครั้งพยายาม-j LOGหลีกเลี่ยงการสแปมไฟล์บันทึกระบบที่มีข้อมูลที่ไม่จำเป็นจำนวนมาก
Steven Monday

3

เมื่อฉันมีปัญหาเครือข่ายที่น่ารังเกียจจริงๆผมมีแนวโน้มที่จะยิงขึ้นWireshark สำหรับฉันไม่มีเครื่องมือวิเคราะห์เครือข่ายที่ดีกว่าเมื่อฉันต้องลงรายละเอียด nitty-gritty และไม่ต้องกังวลหากคุณไม่สามารถติดตั้งบนกล่องต้นทางหรือปลายทาง คุณสามารถเรียกใช้tcpdump -wเพื่อเขียนข้อมูลแพ็คเก็ตไปยังไฟล์เมื่อเริ่มต้นและ / หรือปลายทางและไฟล์ฟีดไปยัง wireshark ในช่องอื่นตามความสะดวกของคุณ


ใช่ฉันขอแนะนำให้ใส่ตัวกรองลงไปเช่นtcpdump -nS dst port <some port>
gravyface

0

จะเป็นการดีหากได้เห็นสิ่งที่ Java thread ของคุณได้รับในระดับซ็อกเก็ต ในเวลาเดียวกันคุณต้องการเชื่อมโยงกับข้อมูลเครือข่าย OS ลองดูที่ AppFirst พวกเขาสามารถทำสิ่งนี้ได้


0
watch -n1 -d "netstat -an | grep ESTABLISHED | wc -l"

แสดงให้เห็นถึงการเชื่อมต่อที่จัดตั้งขึ้นในปัจจุบัน

เปรียบเทียบสิ่งนี้กับulimitการตั้งค่าที่ใช้งานอยู่ของคุณและแน่นอนว่าด้วยจำนวนการเชื่อมต่อสูงสุดที่แอป Java ของคุณสามารถจัดการได้

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