ฉันใช้เครื่อง Azure สองเครื่องเพื่อเรียกใช้ไฟล์ TCP_STREAM
ทดสอบจาก netperf ระหว่างพวกเขา
เครื่องระยะไกลถูกเรียก mymachine-Standard-D8as-v4-premium-disk-west
และท้องถิ่นเรียกว่า mymachine-มาตรฐาน-D8as-v4-พรีเมี่ยม-ดิสก์
.
ฉันทำตามขั้นตอนเหล่านี้:
- เริ่มต้น
เซิร์ฟเวอร์เน็ต
ในเซิร์ฟเวอร์ระยะไกลที่พอร์ต 2333
:
ubuntu@mymachine-Standard-D8as-v4-premium-disk-west-0001:~$ sudo netserver -p 2333
เริ่มต้น netserver ด้วยโฮสต์ 'IN (6)ADDR_ANY' พอร์ต '2333' และตระกูล AF_UNSPEC
ตรวจสอบให้แน่ใจว่าได้เริ่มต้นแล้ว:
ubuntu@mymachine-Standard-D8as-v4-premium-disk-west-0001:~$ ps -ef | grep เน็ตเซิร์ฟเวอร์
รูท 4139 1 0 16:16 ? 00:00:00 /usr/bin/netserver
รูท 26990 1 0 16:21 ? 00:00:00 เซิร์ฟเวอร์เน็ต -p 2333
อูบุนตู 27011 1906 0 16:25 pts/0 00:00:00 grep --color=auto netserver
ubuntu@mymachine-Standard-D8as-v4-premium-disk-west-0001:~$sudo lsof -i tcp:2333
คำสั่ง PID ผู้ใช้ ประเภท FD ขนาดอุปกรณ์/ปิด ชื่อโหนด
netserver 26990 รูท 3u IPv6 66361 0t0 TCP *:2333 (LISTEN)
- รับที่อยู่ IP ของเครื่องระยะไกล:
enP6064s1: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST> mtu 1500
อีเธอร์ 00:0d:3a:f6:09:99 txqueuelen 1000 (อีเธอร์เน็ต)
แพ็คเก็ต RX 53433 ไบต์ 76754512 (76.7 MB)
ข้อผิดพลาด RX 0 หลุด 0 โอเวอร์รัน 0 เฟรม 0
แพ็กเก็ต TX 8200 ไบต์ 1287344 (1.2 MB)
ข้อผิดพลาด TX 0 หลุด 0 โอเวอร์รัน 0 พาหะ 0 ชนกัน 0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.2.0.27 netmask 255.255.192.0 ออกอากาศ 10.2.63.255
inet6 fe80::20d:3aff:fef6:999 คำนำหน้า 64 scopeid 0x20<link>
อีเธอร์ 00:0d:3a:f6:09:99 txqueuelen 1000 (อีเธอร์เน็ต)
แพ็คเก็ต RX 12508 ไบต์ 80101094 (80.1 MB)
ข้อผิดพลาด RX 0 หลุด 0 โอเวอร์รัน 0 เฟรม 0
แพ็กเก็ต TX 8136 ไบต์ 1286894 (1.2 MB)
ข้อผิดพลาด TX 0 หลุด 0 โอเวอร์รัน 0 พาหะ 0 ชนกัน 0
แท้จริง: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 เน็ตมาสก์ 255.0.0.0
inet6 ::1 คำนำหน้าlen 128 scopeid 0x10<host>
วนซ้ำ txqueuelen 1,000 (วนกลับในเครื่อง)
แพ็คเก็ต RX 190 ไบต์ 25942 (25.9 KB)
ข้อผิดพลาด RX 0 หลุด 0 โอเวอร์รัน 0 เฟรม 0
แพ็กเก็ต TX 190 ไบต์ 25942 (25.9 KB)
ข้อผิดพลาด TX 0 หลุด 0 โอเวอร์รัน 0 พาหะ 0 ชนกัน 0
ซึ่งแสดง IP address สำหรับเครื่องตะวันตกคือ 10.2.0.27!
- เรียกใช้ netperf จากเครื่องโลคัล
netperf -H 10.2.0.27 -p 2333 -D 0.5 -c -C -l 20 -t TCP_STREAM -P 0 -f g -- -b 2 -D -o ทรูพุต,throughput_units
และตอนนี้มันทำให้ฉัน:
สร้างการควบคุม: คุณแน่ใจหรือว่ามีเซิร์ฟเวอร์เน็ตที่กำลังฟัง 10.2.0.27 ที่พอร์ต 2333
build_control ไม่สามารถสร้างการเชื่อมต่อการควบคุมจากพอร์ต 0.0.0.0 พอร์ต 0 ที่อยู่ตระกูล AF_UNSPEC ถึง 10.2.0.27 พอร์ต 2333 ที่อยู่ตระกูล AF_INET
มันสับสนมาก! เนื่องจากฉันได้ตรวจสอบแล้วว่า netserver กำลังฟัง 10.2.0.27 ที่พอร์ต 2333 อันที่จริง ขั้นตอนเดียวกันนี้ใช้ได้ดีกับเครื่องของ GCE
ฉันสงสัยว่าอะไรเป็นสาเหตุของสิ่งนี้และวิธีแก้ไข
ตามความคิดเห็นจาก @waltinator ฉันดูที่ เส้นทางไอพี
, สถานะ ufw
, sudo traceroute ระบบอื่น ๆ
ทั้งสองเครื่อง
บนเครื่องตะวันตก:
ubuntu@mymachine-Standard-D8as-v4-premium-disk-west-0001:~$ เส้นทาง ip
ค่าเริ่มต้นผ่าน 10.2.0.1 dev eth0 proto dhcp src 10.2.0.27 เมตริก 100
10.2.0.0/18 dev eth0 ลิงก์ขอบเขตเคอร์เนลโปรโต src 10.2.0.27
168.63.129.16 ผ่าน 10.2.0.1 dev eth0 โปรโต dhcp src 10.2.0.27 เมตริก 100
169.254.169.254 ผ่าน 10.2.0.1 dev eth0 โปรโต dhcp src 10.2.0.27 เมตริก 100
ubuntu@mymachine-Standard-D8as-v4-premium-disk-west-0001:~$ สถานะ ufw
ข้อผิดพลาด: คุณต้องรูทเพื่อเรียกใช้สคริปต์นี้
ubuntu@mymachine-Standard-D8as-v4-premium-disk-west-0001:~$ sudo traceroute 10.1.0.62
ติดตามเส้นทางไปยัง 10.1.0.62 (10.1.0.62), สูงสุด 30 hops, 60 แพ็คเก็ตไบต์
1 * * *
...
30 * * *
บนเครื่องท้องถิ่น:
ubuntu@jane-cr22-Standard-D8as-v4-premium-disk-0001:~$ เส้นทาง ip
ค่าเริ่มต้นผ่าน 10.1.0.1 dev eth0 proto dhcp src 10.1.0.62 เมตริก 100
10.1.0.0/18 dev eth0 ลิงก์ขอบเขตเคอร์เนลโปรโต src 10.1.0.62
168.63.129.16 ผ่าน 10.1.0.1 dev eth0 โปรโต dhcp src 10.1.0.62 เมตริก 100
169.254.169.254 ผ่าน 10.1.0.1 dev eth0 โปรโต dhcp src 10.1.0.62 เมตริก 100
ubuntu@mymachine-Standard-D8as-v4-premium-disk-0001:~$ สถานะ ufw
ข้อผิดพลาด: คุณต้องรูทเพื่อเรียกใช้สคริปต์นี้
ubuntu@mymachine-Standard-D8as-v4-premium-disk-0001:~$ สถานะ sudo ufw
สถานะ: ไม่ได้ใช้งาน
ubuntu@mymachine-Standard-D8as-v4-premium-disk-0001:~$ sudo traceroute 10.2.0.27
ติดตามเส้นทางไปยัง 10.2.0.27 (10.2.0.27), สูงสุด 30 hops, 60 แพ็คเก็ตไบต์
1 * * *
...
30 * * *
นอกจากนี้ สำหรับเครื่องฝั่งตะวันตก ฉันได้เพิ่มกฎพอร์ตขาเข้าที่มีลำดับความสำคัญ 100 ซึ่งอนุญาตให้ต้นทางและปลายทางใดก็ได้ที่มีช่วงพอร์ต 2333 แต่ถึงกระนั้น เครื่องภายในก็ไม่สามารถเชื่อมต่อกับเครื่องระยะไกลได้