Bu paketler bana ait olmasa bile, gelen tüm paketleri NIC'ye nasıl yakalayabilirim?


13

AFAIK, NIC bir Yerel Alan Ağı'ndaki kablodan tüm paketleri alır, ancak hedef adreslerinin ip'e eşit olmadığı paketleri reddeder.

Kullanıcıların internet kullanımını izleyen bir uygulama geliştirmek istiyorum. Her kullanıcının sabit bir IP adresi vardır.

Ben ve diğer bazı kişiler DES-108 8 Bağlantı Noktalı Hızlı Ethernet Yönetilmeyen Masaüstü Anahtarına bağlıyız

Daha önce de söylediğim gibi, sadece bana ait olan paketleri değil, tüm kullanıcıların tüm trafiklerini yakalamak istiyorum.

NIC veya diğer bileşenlerimi tüm paketleri almaya nasıl zorlamalıyım?


1
Yaklaşık 30 € karşılığında ucuz ve yönetilen bir anahtar satın alın ve ağ geçidine bağlantıda bağlantı noktası yansıtmayı etkinleştirin.
Max Ried

Yanıtlar:


27

AFAIK, NIC bir Yerel Alan Ağı'ndaki kablodan tüm paketleri alır, ancak hedef adreslerinin ip'e eşit olmadığı paketleri reddeder.

Düzeltme: Hedef MAC adreslerinin MAC adreslerine (veya çok noktaya yayın veya filtresindeki herhangi bir ek adrese) eşit olmayan paketleri reddeder .

Paket yakalama yardımcı programları, ağ cihazını önemsiz bir moda sokabilir, yani yukarıdaki kontrol atlanır ve cihaz aldığı her şeyi kabul eder. Aslında, bu genellikle varsayılan değerdir: ile tcpdump, bunu yapmamak için -pseçeneği belirtmeniz gerekir.

Daha önemli olan konu, ilgilendiğiniz paketlerin telin koklama limanınıza kadar taşınıp taşınmayacağıdır. Yönetilmeyen bir ethernet anahtarı kullandığınızdan, neredeyse kesinlikle değillerdir. Anahtar, ağ aygıtınız onları görmeyi ummadan önce size ait olmayan paketleri budan ayırmaya karar verir.

Bunu yapmak için, yönetilen bir ethernet anahtarındaki özel olarak yapılandırılmış bir yansıtma veya izleme bağlantı noktasına bağlanmanız gerekir.


1
Veya bir Ethernet hub ... tavan arasında bir paslanma bulabilirseniz :) 1000Base-T için herhangi biri olduğundan şüpheliyim, Wikipedia gigabit hub'larının sadece yarım dubleks bağlantıları desteklediğini ve şimdi kullanımdan kaldırıldığını söylüyor.
chx

1
@chx, tüm gerçek hub'lar yalnızca yarı çift yönlü desteği destekledi. Şahsen, hiç 1000Base-T görmedim.
Celada

Bunun Gigabit Ethernet'in yavaş alımıyla ilgili olması gerektiğine inanıyorum - 802.3ab standardı 1999'da ortaya çıkmasına rağmen, Intel, Gigabit Ethernet için özel CSA veri yolu ile 875P yongasetini ilk kez piyasaya sürdüğünde 2003/2004'e kadar alım çok yavaştı. 2004 yılında PCI Express, Gigabit Ethernet için nihayet yeterli bant genişliğini devraldı. Ve o zamana kadar, anahtarlar yeterince ucuzdu.
chx

Ethernet anahtarı her zaman Çerçeveleri yayınlamaz. Çerçeveyi tek noktaya yayınlamak için kendi anahtarlama tablosuna (anahtar bağlantı noktası ve MAC adresi haritası içerir) sahiptir. Tablonun Çerçevede MAC için bir girişi yoksa, çerçeveyi yayınlar / taşar. Masaüstünüz asla başka Çerçeveler almayacak. Yanıtta olduğu gibi, anahtarınıza gelen tüm kareleri yakalamak için özel anahtar kullanmanız gerekir.
Valarpirai

8

Ethernet hub'larının ilk anahtarlarında (anahtarlar değil), gönderilen paketler alt ağdaki tüm ana bilgisayarlar tarafından kullanılabilir, ancak amaçlanan alıcı olmayan ana makinelerin yoksayması gerekir.

Açıkçası, alt ağların doyması uzun sürmedi, bu nedenle anahtar teknolojisi sorunları çözmek için doğdu ve yaptıkları şeylerden biri, ağın yalnızca bu ana bilgisayar için hedeflenen paketleri paket haline getirmesini sağlamaktı (artı andy yayın trafiği) ).

Bu, yalnızca ana makineniz için olan paketleri koklayabildiğiniz için ağ izleme / koklamayı zorlaştırır. Bu, güvenlik açısından iyi bir şey olarak kabul edildi, ancak bir ağ izleme açısından o kadar iyi değil. Ağ izlemeyi çalıştırmak için, satıcılar bağlantı noktası yansıtma adı verilen bir özellik uygular. Bu ağ anahtarında yapılandırılmalıdır ve aşağıdaki bağlantı sizi D-link ürünleri için doğru yönde göstermelidir. Anahtar yönetim yazılımınızda veya web yöneticisi arayüzünde bir yerde bulacaksınız. Bu özellikleri bulamazsanız, işlevsellik söz konusu cihazda sağlanmayabilir.

http://www.dlink.com/uk/en/support/faq/switches/layer-2-gigabit/dgs-series/es_dgs_1210_como_monitorear_trafico_de_un_puerto_port_mirroring


2

İlk önce NIC'inizi karışık moda geçirmeniz gerekir. NIC arayüzünüzün eth0 olduğunu varsayalım.

root@linux#ifconfig eth0 promesc

Bir anahtar ağındaysanız, koklama, anahtar bağlantı noktasına bağlanan çarpışma etki alanına indirgenir. macofAnahtarın yönlendirme tablosunu boğmak için koşabilirsiniz .

root@linux#macof -i eth0

Ardından, tüm trafiği yakalamak için wiresharkveya tcpdumpdüğmesini kullanabilirsiniz .

root@linux#tcpdump -i eth0 -w outputfile

Anahtarlamalı bir ağda değilseniz, karışık modu etkinleştirip kullanın tcpdump.


1
tcpdumpsizin için karışık modu etkinleştirecektir. Bunu manuel olarak yapmanız gerekmez (ve işiniz bittiğinde geri almayı unutmayın).
Celada

0

Tekerleği yeniden icat ediyorsun.

Varsayılan bir ağ geçidi olan anahtarlara bağlanan istemcilerle basit bir ağınız olduğunu varsayarsak, yalnızca bu varsayılan ağ geçidi cihazında izlemeniz gerekir. Bu, bir LAN istemcisi ile internet arasındaki tüm trafiği göstermek için bir boğulma noktası olacaktır.

Aynı IP alt ağındaki tüm IP adresleri ile yerel trafik varsayılan ağ geçidine dokunmadığından LAN istemcisinin LAN istemcisi trafiğine ilgi duymadığını varsayıyorum.

Gerçekten tüm trafiği görmek istiyorsanız, her kullanıcının kendi IP ağında olması gerekir ve diğer ağlara giden trafik varsayılan ağ geçidi üzerinden yapılır. Her kişiye bir / 28 tahsis edebilirsiniz ve kendilerine 14 IP'si olabilir.

Ortalama ev tipi yönlendiriciniz bunların çoğunu ele almaz, özel bir güvenlik duvarı dağıtımını keşfetmeniz gerekir. Şahsen benim tercihim olurdu, ama birçok seçenek var.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.