Permalänk
Medlem

IP konflikt

Hej, jag har ett nätverk med ca 50 olika enheter (datorer/skrivare/kort-terminaler/larm/sonos) och det verkar som om det har uppstått någon form av ip konflikt. DHCP är ställd från 192.168.50.2 -192.168.50.250. Routern (DHCP-servern) har 192.168.50.1.
Finns det en app eller ett CMD kommando som listar MAC adresser (inte IP adresser) där IP adresserna är kopplade? Har försökt med arp -a och olika IP scanners (Advanced IP Scanner) men dessa pekar på ip adressen. Hälsningar Henkele

Permalänk
Hedersmedlem

Vet du vilket IP det är som kolliderar? Hur märker du felet?

Visa signatur

Använd gilla för att markera nyttiga inlägg!

Permalänk
Medlem

nmap fixar det

Permalänk
Medlem

Du kan kopiera in följande i en terminal app på nätverket så skall det fungera.

for numbers in $(seq 2 254); do if ping -c 2 -W 2 192.168.50.${numbers} >/dev/null 2>&1; then echo "Host 192.168.50.${numbers} is up" else echo "Host 192.168.50.${numbers} is down, scan toke 2 seconds" fi sleep 2 done

Tid per host är 2 sekunder så på 254 hosts så blir det totalt 508 sekunder. Så på 508 sekunder vet du vilka enheter som är online. Finns det en konflikt så löser det inte problemet dock men du scannar nätverket såhär exempelvis.

arp -a fungerar bara om du kör det direkt på din router dvs, inte på enheten då den inte har varit i kontakt med alla enheter på ditt nätverk troligtvis så det fungerar bara ifall om enheten du använder har varit i kontakt med alla dina 50 enheter, så efter du har kört detta ovan i 508 sekunder så kommer nog arp -a fungera därefter.

Det kom in fågel och skrev att detta fixar nmap DOCK är det också ganska trögt och segt att använda men det fungerar också jag har inte benchmarkat skillnaden på dessa två klassiska exempel som jag tar upp här nu men det är två väldigt klassiska exempel (Kom ihåg att nmap varianten kräver att just nmap är installerat på din enhet också vilket inte alltid är fallet - väldigt sällan by default - så därför är första lite effektivare)

nmap -sn 192.168.50.2-254

Använd valfri app: https://play.google.com/store/search?q=terminal

Snabbaste sättet jag lyckats är på 0.521 sekunder då skall ingen missas p.g.a av slow response! Det är benchmarkat över 10 000 gånger men det kanske kan få andra att bli intresserade och vilja utmana det rekordet, därför jag nämner det.

Får lägga till att Fing fungerar bra också om du bara vill ha en simpel app: https://play.google.com/store/apps/details?id=com.overlook.an...

Permalänk
Medlem

@Henkele det ska inte kunna bli IP-konflikt, är du säker på alla enheter använder DHCP eller har du satt någon till fast IP för då kan det krocka.

Sedan kan det vara bra att ha tidsgräns på DHCP vilket är det normala, så fort en IP inte används på en viss tid så blir den ledig. Har man satt det till oändligt blir IP adressen aldrig ledig. Då kan det hända att man har använt olika enheter, folk som kommer med telefoner etc och efter ett tag är IP-adresserna slut.

Permalänk
Medlem

Som giplet är inne på är det nog lite halvsvårt svårt att få svar på frågan ”har jag några IP-adresskonflikter och i så fall vilka maskiner?”

Om du har en maskin med problem, stäng av den och se om du fortfarande kan pinga IP:t. Eller som föreslagits, scanna samtliga portar på det IP:t med nmap och se om något svarar. Om du får ett svar så har du i alla fall en MAC-adress (och kanske ett gäng öppna portar) att gå på. Maskinen med problem kommer antagligen ha loggposter där den identifierar MAC-adressen för den som konkurrerar om samma IP.

Några ideer för den generella problemställningen:

Wireshark har ett filter som heter arp.duplicare-adress-detected. Borde funka om man scannar hela LAN:et med nmap samtidigt som man fångar trafiken.

arping -d verkar enligt manualsidan kunna hitta svar från flera MAC-adresser. Verkar vara ont om script på nätet som loopar ett gäng IP-adresser och kör detta.

Man borde kunna scripta gratious ARPs (dvs ARP-svar som säger jag har denna kombination av IP och MAC) med arping och provocera fram svar från de maskiner som även de tycker att de har den berörda IP-adressen. Det finns mekanismer för självtilldelning av IP-adresser som undviker att ta samma som någon annan på det viset, kommer inte ihåg om det är i IPv4 eller IPv6.

ping -b 255.255.255.255 skulle kunna ge något om maskinerna är tillräckligt knäppa för att svara på ping till broadcast.

Jag orkar inte ställa till en konflikt och testa något av detta.

Grundproblemet är ju att de flesta verktyg bara kommer hantera en mappning mellan IP och MAC i taget. Möjligen är ping tillräckligt smart för att förstå att den får flera svar på samma paket och att förslaget från prez1z ovan funkar. Jag skulle gärna se en skärmdump i så fall. Problemet bör vara att man skickar ping till en viss MAC och att en nätverksstack inte nödvändigtvis svarar på ping till rätt IP men fel MAC.

Permalänk
Medlem

Är det inte enklare att bara kolla av alla enheter att det är DHCP på dessa, kolla din router att DHCP stämmer där. När allt detta är kollat, stäng av routern och plugga bort allt och börja om. Fick du konflikt på nytt, då måste du försöka hitta vad felet är.

Blandar man fasta IP med DHCP måste man hålla koll på detta själv. Jag har t.ex. fast IP som börjar på .1 och går till .20 även om jag inte använder alla, sedan startar jag DHCP från .25 upp till .230 på de viset finns det lediga IP adresser jag kan använda som fasta.

Jag har gjort så för att jag har en trådlös länk med datorer och prylar på annan fysisk plats, genom att köra fasta IP adresser på detta så slipper jag problem med övrig utrustning där som kommer och går, smartphones etc som använder DHCP för att få sin access.

Permalänk
Medlem

Jag rekommenderar att köra Linux-verktyget arp-scan för att hitta maskiner som har samma IP-nummer. Verktyget finns i EPEL för RHEL-baserade system samt i standard-repona för Ubuntu.

Så här ser det ut när jag har satt samma IP (10.81.0.42) på tre interface in en VM. Man ser att tre (i mitt fall) MAC-addresser vill signalera att de tycker att de äger samma IP.

[root@podmanhost vagrant]# arp-scan -I eth2 10.81.0.0/24 WARNING: Could not obtain IP address for interface eth2. Using 0.0.0.0 for the source address, which may not be what you want. Either configure eth2 with an IP address, or manually specify the address with the --arpspa option. Interface: eth2, type: EN10MB, MAC: 08:00:27:1e:05:62, IPv4: (none) Starting arp-scan 1.10.0 with 256 hosts (https://github.com/royhills/arp-scan) 10.81.0.7 08:00:27:e1:e7:27 PCS Systemtechnik GmbH 10.81.0.8 08:00:27:50:db:6e PCS Systemtechnik GmbH 10.81.0.8 08:00:27:25:98:b5 PCS Systemtechnik GmbH (DUP: 2) 10.81.0.42 08:00:27:e1:e7:27 PCS Systemtechnik GmbH 10.81.0.42 08:00:27:50:db:6e PCS Systemtechnik GmbH (DUP: 2) 10.81.0.42 08:00:27:25:98:b5 PCS Systemtechnik GmbH (DUP: 3) 6 packets received by filter, 0 packets dropped by kernel Ending arp-scan 1.10.0: 256 hosts scanned in 2.031 seconds (126.05 hosts/sec). 3 responded

Om man kör på en icke-VM så får man halv-bra ledning om vilken typ av enhet MAC-addressen tillhör.

Permalänk
Medlem

Om du "bara" har 50 enheter så sätt en DHCP-range på 100-199 och sätt även ner leasingtiden. De enheter som du kör idag kommer då börja få IP från det "nya" spannet när leasingtiden går ut.
Har du en IP konflikt så ser du säkerligen det i loggarna på routern.

Permalänk
Medlem

Hej, tack för snabba svar. Linux arp-scan (arp-scan --timeout 1000 192.168.50.0/24) hittade dubletterna i nätverket.
Ändrade scopen på DHCP:n (100-250) och satte fast ip-adresser på dubletterna.