标签: arp

用Java收听ARP广播

有人可以指导我在 Java 中收听 ARP 广播吗?

java networking packet-capture arp

3
推荐指数
1
解决办法
1836
查看次数

为什么在ARP请求中需要发件人MAC地址?

是ARP请求PNG图像的有线捕获,我在ARP数据包内包含发送方MAC。接收站可以从以太网帧中得出MAC。这似乎是多余的。在ARP请求中单独包含发件人MAC地址也有什么特殊用途吗?

arp wireshark tcp-ip

3
推荐指数
1
解决办法
3616
查看次数

为什么默认情况下不启用arp ignore/annouce

我有一个特定的问题,需要经验来回答:

为什么arp_ignore/arp_announce默认情况下不启用linux安装(例如debian)是否有特定原因?

从错误的网络接口接收arp回答的兴趣是什么?

谢谢你的帮助.

问候,

linux debian arp

3
推荐指数
1
解决办法
4078
查看次数

列出本地网络上的所有设备?

我已经尝试arp -a了很多,它列出了一些设备,但不是全部.ifconfig显示我的IP地址和mac地址以及一些其他有用的信息,但它不显示本地网络上的所有设备.是否有显示所有IP地址的命令?

ip arp ifconfig wifi

3
推荐指数
1
解决办法
3万
查看次数

设置 ICMP 与 POX 控制器匹配


我正在尝试使用 POX 控制器向交换机添加流条目,我的代码是:

    fm = of.ofp_flow_mod()
    fm.match.in_port = 1
    fm.priority = 33001
    fm.match.dl_type = 0x800
    fm.match.nw_src = IPAddr("10.0.0.1")
    fm.match.nw_dst = IPAddr("10.0.0.5")

    fm.actions.append(of.ofp_action_output( port = 2 ) )
    event.connection.send( fm )
Run Code Online (Sandbox Code Playgroud)

但是,当我从 10.0.0.1 ping 到 10.0.0.5 时,没有回复。可能是什么问题?(我还为 ICMP 回复添加了对称流)

谢谢

arp icmp pox openflow mininet

3
推荐指数
1
解决办法
3564
查看次数

Python Scapy --arp 请求和响应

我使用以下行发送 arp 数据包广播:

send(ARP(op=ARP.who_has, psrc="192.168.5.51", pdst=the_ip))
Run Code Online (Sandbox Code Playgroud)

我的问题是:如何查看响应(在本例中:远程 ip 的 mac)?我知道我能做到:

pkt = sniff(filter=arp , count=10) 
print (pkt.summary()) 
Run Code Online (Sandbox Code Playgroud)

但我不想计算数据包,因为我不知道什么时候会打印它(可能在接下来的 10 个或 100 个数据包中)

有没有办法在嗅探时打印摘要,从而看到我正在寻找的 mac 地址?

编辑:我有一个想法,我可以嗅探10个数据包吗,如果数据包中有ip,则打印mac地址,否则再嗅探10个数据包...这项技术似乎不是一个好的技术...

python scapy arp

3
推荐指数
1
解决办法
5万
查看次数

在python上发出ARP请求

我正在尝试在 python 上发出 ARP 请求。我的代码:

import socket
from struct import pack
from uuid import getnode as get_mac

def main():
    dest_ip = [10, 7, 31, 99]
    local_mac = [int(("%x" % get_mac())[i:i+2], 16) for i in range(0, 12, 2)]
    local_ip = [int(x) for x in socket.gethostbyname(socket.gethostname()).split('.')]

    sock = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.SOCK_RAW)
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
    sock.bind(('', 0))

    ARP_FRAME = [
        pack('!H', 0x0001), # HRD
        pack('!H', 0x0800), # PRO
        pack('!B', 0x06), # HLN
        pack('!B', 0x04), # PLN 
        pack('!H', 0x0001), # OP …
Run Code Online (Sandbox Code Playgroud)

python sockets networking arp

3
推荐指数
1
解决办法
2万
查看次数

当我的浏览器进行搜索时会发生什么?(ARP,DNS,TCP细节)

我正在尝试学习ARP/TCP/HTTP的基础知识(以散射方式).举个例子,当我去google.com并进行搜索时会发生什么?

到目前为止我的理解:

  • 对于我的机器与其他人(在这种情况下是网关)进行通信,它可能需要进行ARP广播(如果它还没有ARP缓存中的MAC地址)

  • 然后需要解析google.com的IP地址.它通过联系DNS服务器来完成此操作.(我不完全确定它是如何知道DNS服务器的位置的?或者是知道的网关?)

  • 这涉及通过TCP协议进行通信,因为HTTP建立在它上面(TCP握手:SYN,SYN/ACK,ACK,然后是内容请求,然后是RST,RST/ACK,ACK)

  • 要实际加载网页,浏览器会获取index.html,解析它,然后根据需要发送更多请求?(图像等)

  • 最后,为了进行实际的谷歌搜索,我不明白浏览器是如何沟通的"我在搜索框中键入内容然后按Enter键".

这看起来是对的吗?/我有什么不妥或遗漏任何关键的东西吗?

tcp http arp

2
推荐指数
1
解决办法
6735
查看次数

从C中的IP获取MAC地址

当我的用户提供本地和远程 IP:Port 对时,我需要提供一个组装 UDP 数据包的函数。我有一个以太网卡 API,它为我发送一个以太网帧,我是否必须填充一个包含 MAC 地址、IP 和 UDP的完整以太网帧

问题:给定互联网上的一个IPV4地址,如何找出该IP对应的MAC地址,以便填入以太网帧头。我如何使用 C 从路由器的 ARP 表中查找它。我是否应该向我的路由器发送一个 ARP 数据包(我也不知道该怎么做)。

当我调用UDP sendto()时,以太网帧中的MAC地址是谁填写的?这是如何实现的?

c sockets arp

2
推荐指数
1
解决办法
3957
查看次数

Scapy ARP 中毒

Scapy 文档提供了以下 ARP 缓存中毒示例:

send(Ether(dst=clientMAC)/ARP(op="who-has", psrc=gateway, pdst=client))
Run Code Online (Sandbox Code Playgroud)

问题 1:
我的理解是,这是来自客户端的 ARP 请求的广播。攻击者是否应该执行 ARP 毒药响应:

send(Ether(dst=clientMAC)/ARP(op="is-at", psrc=gateway, pdst=client))
Run Code Online (Sandbox Code Playgroud)

问题 2:在关于 Scapy 的 stackoverflow 上的帖子中,OP 发布了:

这会向受害者发送一个 ARP 回复数据包,其中本地机器伪装成路由器:

send(ARP(op=ARP.is_at, psrc=router_ip, hwdst=victim_mac, pdst=victim_ip))
Run Code Online (Sandbox Code Playgroud)

这会向路由器发送一个 ARP 回复数据包,本地机器伪装成受害者:

send(ARP(op=ARP.is_at, psrc=victim_ip, hwdst=router_mac, pdst=router_ip))
Run Code Online (Sandbox Code Playgroud)

在这两个数据包中,hwsrc 字段默认填充本地机器的 MAC 地址。

但是 Scapy 文档没有提到需要 hwdst。我想知道为什么。

问题 3:在 Scapy 文档中:

send(Ether(dst=clientMAC)/ARP(op="who-has", psrc=gateway, pdst=client))
Run Code Online (Sandbox Code Playgroud)

但是在问题 2 的 OP 帖子中,没有提供 Ether(dst-clientMAC)。这是否意味着它不是必需的?

谢谢。

scapy arp

2
推荐指数
1
解决办法
4570
查看次数

标签 统计

arp ×10

networking ×2

python ×2

scapy ×2

sockets ×2

c ×1

debian ×1

http ×1

icmp ×1

ifconfig ×1

ip ×1

java ×1

linux ×1

mininet ×1

openflow ×1

packet-capture ×1

pox ×1

tcp ×1

tcp-ip ×1

wifi ×1

wireshark ×1