我已经设置了一个虚拟机,并尝试使用Python脚本将IPv6消息发送到我的计算机,这样我就可以使用WireShark对其进行分析。主机是Windows,我想看到来自linuxvm的消息。但是,当我试图发送消息时,套接字.绑定()返回一个无效参数错误。我应该使用哪个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
。在相关问题 更多 >
编程相关推荐