2013-09-04 15 views
12

Herhangi bir üst katman yükü olmayan bir Ethernet çerçevesi oluşturup, sendp() ile iki katmana gönderirsem, "Mac address to reach destination not found. Using broadcast." telini uyarır ve çerçeve telini ff: ff: ff: ff: ff: ff: ff olarak kullanır. bir hedef MAC adresi. Bu neden böyle? Scapy tam olarak inşa ettiğim çerçeveyi göndermemeli mi?Scapy'yi Anlamak "Hedefe ulaşmak için Mac adresi bulunamadı. Yayını kullanma." uyarı

Benim hazırlanmış paket aşağıda görülebilir:

>>> ls(x) 
dst  : DestMACField   = '01:00:0c:cc:cc:cc' (None) 
src  : SourceMACField  = '00:11:22:33:44:55' (None) 
type  : XShortEnumField  = 0    (0) 
>>> sendp(x, iface="eth0") 
WARNING: Mac address to reach destination not found. Using broadcast. 
. 
Sent 1 packets. 
>>> 
+0

. Paket oluşturmak için kullandığınız satırı, scapy sürümünüzü ve üzerinde çalıştığınız platformu yükleyebilir misiniz? – nmichaels

cevap

8

yanlış send() (veya sr(), sr1(), srloop()) kullanıyorsanız bu sorunla karşılaşmış Çoğu insan yerine, srploop() (veya srp(), srp1()sendp() arasında). Kayıt için, send() gibi "p" işlevleri, "with-p" değişkenleri katman 2 paketleri (sendp(Ether()/IP())) göndermek için iken, 3 katman paketi (send(IP())) göndermek içindir. Aşağıda yapmak ve sendp() (ve send()) kullanmak gibi x tanımlamak ve hala bu sorunu varsa

, muhtemelen projenin git deposundan son sürümü (https://github.com/secdev/scapy bakınız) ile denemelisiniz.

denedim:

>>> x = Ether(src='01:00:0c:cc:cc:cc', dst='00:11:22:33:44:55') 
>>> ls(x) 
dst  : DestMACField   = '00:11:22:33:44:55' (None) 
src  : SourceMACField  = '01:00:0c:cc:cc:cc' (None) 
type  : XShortEnumField  = 0    (0) 
>>> sendp(x, iface='eth0') 
. 
Sent 1 packets. 

Aynı zamanda ben tcpdump koşuyordu: Bunu yeniden olamaz

# tcpdump -eni eth0 ether host 00:11:22:33:44:55 
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode 
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 
12:33:47.774570 01:00:0c:cc:cc:cc > 00:11:22:33:44:55, 802.3, length 14: [|llc] 
İlgili konular