วิธีที่ง่ายที่สุดในการทดสอบเซิร์ฟเวอร์ซ็อกเก็ตธรรมดาคืออะไร


18

ฉันมีเซิร์ฟเวอร์ที่ฟังซ็อกเก็ตสำหรับการเชื่อมต่อขาเข้าและส่งข้อความต้อนรับ ("Hello world") วิธีทดสอบที่ง่ายที่สุดด้วยเครื่องมือธรรมดาจากระบบปฏิบัติการ (ที่นี่ OS X) คืออะไร ฉันจินตนาการถึงแอปพลิเคชันเทอร์มินัล RS232 แบบเก่าที่ดี:

mac:~ mike$ terminal 192.168.92.123 1234
Hello world
>

นี่คือพอร์ตไม่ใช่ซ็อกเก็ต ถ้าคุณจริงต้องการที่จะทดสอบซ็อกเก็ตคุณควรใช้nc -Uบน OS X และ Linux ในการใช้งานเช่นsocat socat - UNIX-CONNECT:/tmp/memcached.sock
Simon Woodside

คำตอบ:


30

ขึ้นอยู่กับประเภทของการทดสอบที่คุณต้องการใช้? หากคุณต้องการทดสอบการสร้างการเชื่อมต่อและส่งข้อมูลบางอย่างฉันสามารถคิดถึงการทดสอบง่าย ๆ สองแบบ ใช้netcat(nc) เพื่อ "echo" ข้อมูลบางอย่างลงในซ็อกเก็ตระยะไกลหรือใช้ telnet เพื่อเชื่อมต่อกับมันแบบโต้ตอบ

หากเซิร์ฟเวอร์ของคุณกำลังรับฟังใน foobar.com พอร์ต 1234 คุณสามารถทดสอบได้ดังนี้:

bro@host:~ $ echo "Some data to send" | nc foobar.com 1234

ที่อยู่ / พอร์ตเดียวกันข้างต้น แต่ทำให้เซสชันโต้ตอบ:

bro@host:~ $ telnet foobar.com 1234
Trying foobar.com...
Connected to foobar.com.
Escape character is '^]'.
Type some data to send here

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