gpt4 book ai didi

python - 在 python 脚本中使用 pycore 库向节点发送数据包并从节点接收数据包

转载 作者:太空宇宙 更新时间:2023-11-03 16:24:46 24 4
gpt4 key购买 nike

#!/usr/bin/python
from core import pycore
import logging
logging.getLogger("scapy.runtime").setLevel(logging.ERROR)
from scapy.all import *

session = pycore.Session(persistent=True)
node1 = session.addobj(cls=pycore.nodes.CoreNode, name="node1")
node2 = session.addobj(cls=pycore.nodes.CoreNode, name="node2")
hub1 = session.addobj(cls=pycore.nodes.HubNode, name="hub")
node1.newnetif(hub1, ["10.0.0.1/24"])
node2.newnetif(hub1, ["10.0.0.2/24"])

packet = IP(src="10.0.0.1",dst="10.0.0.2")/ICMP()/"Hello World"

在这里,我创建了两个节点,即 node1node2,它们连接到名为 hub1 的集线器。 node2 可以从 node1 执行 ping 操作,但我想将数据包(我在最后一行代码中创建)从 node1 发送到 node2 并在 node2 接收后处理该数据包。请帮助我!

最佳答案

要通过网络发送文件,您可以使用 NetCat在 Linux 上。在 CORE 中,您可以向这些节点发送 shell 命令。因此,您可以执行以下操作。

node1.shcmd("nc -l 4444 > download.txt")
node2.shcmd("nc -w3 10.0.0.1 4444 < upload.txt")

假定文件 upload.txt 存在于虚拟节点 node2 上,并复制到虚拟节点 node1 下文件名download.txt

要创建文件,您可以再次使用shcmd传递shell命令来创建文件。

node2.shcmd("dd if=/dev/urandom of=upload.txt bs=1024 count=100")

这将在 node2 上创建一个 102kB 文件。请确保在使用 NetCat 之前使用此命令。

关于python - 在 python 脚本中使用 pycore 库向节点发送数据包并从节点接收数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38095423/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com