python - Python脚本将数据包发送到IP,如packetsender.com
问题描述
我在使用 python 脚本发送数据包时遇到问题。我已经像这样使用 socket.send 了:
import socket
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(10)
s.connect(("10.10.0.250", 8010))
print(s)
while True:
try:
s.send(b'1b02fa031b03c8')
reply = s.recv(131072)
if not reply:
break
print("recvd: ", reply)
except KeyboardInterrupt:
print("bye")
break
s.close()
except socket.error as socketerror:
s.close()
print("Error: ", socketerror)
但显示错误:超时。 我已确保 10.10.0.250 已连接到我的笔记本电脑。
发送字符串我已经在应用程序调用packetender中尝试过,使用此工具一切正常。
问题是 WHAT SCRIPT PYTHON 与 packetender 中的使用等效?
不管怎么说,还是要谢谢你。问候
解决方案
我对此有答案:
- 非常感谢@jackw1111,您的评论作为线索:在脚本中使用原始套接字时,大多数操作系统需要高级权限(例如 root 用户)才能运行它们。
- 发送数据包必须在 ascii 中:
packet = b'\x1b\x02\xfa\x03\x1b\x03\xc8'
s.send(packet)
谢谢大家
推荐阅读
- python - 通过 Python 运行 Excel 宏而无法更改信任中心设置
- mysql - 如何将 Mysql character_set_system UTF8 更改为 utf8bin
- python-3.x - Pandas,按行计算,第一个值满足条件
- java - 使用 liquibase 和 docker postgis/postgis 的错误编码
- python - 具有上游 pypi 的 AWS Codeartifact 未获取最新版本
- javascript - 渲染 React 组件返回此表达式不可调用。类型 'void' 没有调用签名
- docker - 使用 tds 文件结构在 docker 内更新 pfgplots 的问题
- c++ - 如何理解 for 循环中的自动推断?
- docker - 如何使用 docker 容器模拟测试 tcp 连接?(骆驼和网状消费者)
- splunk - splunk的日志文件收集技术是什么