[英]IPv6 Address to supply for Python socket source
我已經設置了一個VM,並試圖使用Python腳本將IPv6消息發送到我的計算機,以便可以使用WireShark對其進行分析。 主機是Windows,我想查看來自Linux VM的消息。 但是,當我嘗試發送消息時,socket.bind()返回時帶有無效的參數錯誤。 我應該使用哪個IPv6地址作為綁定套接字的本地IP? 我99%確信錯誤是由於綁定到無效IP引起的。 那么我應該使用什么作為IP? 這是nmcli dev show的輸出,希望這是足夠的信息來幫助我解決這個問題。 如果不是,請告訴我,我將添加更多信息。
[eng@peter test_scripts]$ nmcli dev show
GENERAL.DEVICE: enp0s3
GENERAL.TYPE: ethernet
GENERAL.HWADDR: 08:00:27:F7:9A:17
GENERAL.MTU: 1500
GENERAL.STATE: 100 (connected)
GENERAL.CONNECTION: System enp0s3
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/0
WIRED-PROPERTIES.CARRIER: on
IP4.ADDRESS[1]: 10.0.2.15/24
IP4.GATEWAY: 10.0.2.2
IP4.DNS[1]: 10.0.2.3
IP4.DOMAIN[1]: stc.syrres.com
IP6.ADDRESS[1]: fe80::a00:27ff:fef7:9a17/64
IP6.GATEWAY:
GENERAL.DEVICE: lo
GENERAL.TYPE: loopback
GENERAL.HWADDR: 00:00:00:00:00:00
GENERAL.MTU: 65536
GENERAL.STATE: 10 (unmanaged)
GENERAL.CONNECTION: --
GENERAL.CON-PATH: --
IP4.ADDRESS[1]: 127.0.0.1/8
IP4.GATEWAY:
IP6.ADDRESS[1]: ::1/128
IP6.GATEWAY:
我已經測試了'fe80 :: a00:27ff:fef7:9a17 / 64','fe80 :: a00:27ff:fef7:9a17'等,但仍然無法使其綁定。 我應該使用哪個IPv6地址?
如果您想聽,最好的選擇是綁定到::
,相當於綁定到0.0.0.0
。
如果要連接到該服務器,請記住,您使用的是本地鏈接地址,該地址需要作用域ID才能正常運行。
例如,在Linux上,要連接到接口eth0
上的主機fe80::1
,您應連接到fe80::1%eth0
。 如果要處理socket
模塊,請不要忘記使用getaddrinfo()
或非常小心地填充scopeid
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.