| Autor |
Beitrag |
ShadowCaster
      
Beiträge: 312
|
Verfasst: Di 15.04.03 15:08
Hallo Leute,
ich hab eine Frage bezüglich meiner Netzwerkkarte im Netzwerk. Ich suche eine Funktion, die die physikalische IP meiner Netzwerkkarte ändert. Der PC soll aber im LAN noch unter dem Hostnamen ereichbar sein. Die Funktion kann sozusagen die IP in die Werte ändern wie ich es gern haben will und der PC ist dann im Netzwerk unter der IP erreichbar.
Weiß jemand wie man das programmtechnisch umsetzt? 
|
|
UGrohne
      

Beiträge: 5502
Erhaltene Danke: 220
Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
|
Verfasst: Di 15.04.03 15:12
Also, wie man es programmtechnisch umsetzt, weiß ich net, aber es gibt da wohl einige Problemchen.
Du kannst z.B. nicht unter alten NT4 oder 9x-Windows die IP ändern, da brauchts dann schon ein Neustart. Und das mit dem Erreichen, kommt immer drauf an, wie er sonst im Netzwerk erreichbar ist. Wenn es einen zentralen DNS-Server gibt, könnte es Probleme geben, wenn er dort mit fester IP eingetragen wird. Außerdem wirds Probleme geben, wenn der Rechner in einem DHCP-Netz verwendet wird, da kann es gut sein (je nach Server), dass er nach der Umstellung auf feste IP gar nicht mehr erreichbar ist.
Nur so viel zur Anmerkung.
Gruß
|
|
ShadowCaster 
      
Beiträge: 312
|
Verfasst: Di 15.04.03 17:32
ich glaub nicht, dass man bei win98 einen Neustart nach dem Ändern der IP braucht. Soviel ich weiß muss man nur den "eth0" der Netzwerkkonfiguration ansprechen und kann darüber die IP der Netzwerkkarte ändern, also quasi direkt in den Ram der Netzwerkkarte schreiben. Linux kann das zum Beispiel auch und ich würd gern rausfinden, wie es in windows geht.
|
|
Phobeus
      
Beiträge: 1280
Linux (FC6), WinXP Pro (Box)
D6 Pers, D7 Pro, FPC 2.x
|
Verfasst: Di 15.04.03 19:07
Ich bin da nicht so sicher, aber IMAO ist dein Unterfangen soooo nicht machbar. Den Hostnamen aufzulosen ist aufgabe des zuständigen DNS, ergo zumindest dieser muss über eine Änderung informiert werden. IMAO ist es jedoch möglich gewisse Pakete mit einer anderen Absender-IP zu versehen. Habe es bisher nicht probiert, aber dies sollte über die Socket gehen. Bei Indy z.b BindingIP. Allerdings würde dies auch zur Folge haben, dass ein anderer Rechner die Pakete annehmen will oder diese beim Rücksenden nicht mehr zustellbar sind.
Frage daher nochmal nach dem Sinn des Unterfangens, weil ich damit rechne, dass man hier eher eine Netzwerktechnische Lösung aufgreifen sollte, anstatt die IP der NIC zu verändern.
Phobeus
_________________ "Menschen sterben nicht wenn man sie zu Grabe trägt, sondern wenn sie ihre Träume verlieren..."
|
|
ShadowCaster 
      
Beiträge: 312
|
Verfasst: Mi 16.04.03 08:35
Hallo,
danke für eure Antworten bisher. Die haben aber nicht wirklich weitergeholfen, leider. Wenn es nicht möglich ist, dem DNS bescheid zu sagen dass sich die IP verändert hat, dann auch egal. Ich möchte aber eigentlich wissen, wie man das macht und den entsprechenden Cache der Netzwerkkarte umstellt, der die IP beinhaltet oder die IP des Rechners zur Laufzeit verändert (ohne Neustart).  Ich denke, der Neustart ist in windows nur deswegen nötig, damit man sich neu am DNS anmelden muss und dieser die IP erkennt, oder sehe ich das falsch? In meinem Falle möchte ich halt nur die IP ändern, ohne Neustart. Dann hat das erstmal den DNS nicht zu interessieren
Trotzdem Danke
|
|
Udontknow
      
Beiträge: 2596
Win7
D2006 WIN32, .NET (C#)
|
Verfasst: Mi 16.04.03 09:12
Hi!
Was hat der DNS-Server eigentlich mit der IP-Adresse des Clientrechners zu tun? Der beantwortet doch nur Anfragen für die Namensauflösung. Wenn plötzlich Anfragen von einer anderen IP-Adresse kommen (ich gehe also davon aus, dass der Rechner noch immer im selben Subnet ist), wird das den DNS doch nicht stören, er antwortet halt an diese IP. Oder verstehe ich da was nicht ganz?
Cu,
Udontknow
|
|
opfer.der.genauigkeit
      
Beiträge: 754
Erhaltene Danke: 1
|
Verfasst: Mi 16.04.03 09:13
Eigentlich brauchst du nich neustarten wenn du ne neue IP willst. Einfach aus'm Inet rausgehen und neu einwählen.
Im Netzwerk... hm...
Öffne mal die Commandozeile in Windows und tipp dort
' ipconfig /? ' ein. Da müßte es meiner Meinung nach sowas wie ipconfig /renew geben.
Zum Thema DHCP. Sehr sinnvolle Angelegenheit.
Ich weiß nicht wie das bei anderen DHCPs ist aber bei mir, kriegt jeder Rechner am Anfang eine IP zugewiesen wenn er neu ins Netzwerk hat.
Geht der Rechner aus'm Netz raus und loggt sich dann neu ein, erkennt der DHCP automatisch an der MAC- Adresse um welchen Rechner es sich handelt und ihm seine alte IP- Adresse wieder zu.
_________________ Stellen Sie sich bitte Zirkusmusik vor.
|
|
focus
      
Beiträge: 187
XP, 2k, 98, Me
D6 Prof
|
Verfasst: Mi 16.04.03 09:22
| ShadowCaster hat folgendes geschrieben: |
den entsprechenden Cache der Netzwerkkarte umstellt, der die IP beinhaltet
|
???meinst du jetzt die ip oder die mac?
primär haben die beiden erstmal überhauptnichts miteinander zutun....
schon von den schichten her nicht....
wenn du die ip verändern möchtest tue das hier:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\{E1A85B30-6AD3-4D23-A7A5-7AD9244C9183}\Parameters\Tcpip
dein pfad sieht vermutlich etwas anders aus ;P aber der aufbau ist der gleiche
sie hat aber überhaupt nichts mit der netzwerkkarte zu tun...
wenn du die mac verändern möchtest kommst du "meisst" ohne hardwaremanipulation nicht rum und ist ehrlich gesagt auch recht unsinnig.
(trotzdem empfehle ich dir weil es sich einfach so anhört als ob du mac u. ip noch ein wenig durcheinanderwürfelst, dir mal das osi referenzmodell anzusehen)
www.powerweb.de/phade/diplom/kap211.htm
gruss
michael
|
|
ShadowCaster 
      
Beiträge: 312
|
Verfasst: Mi 16.04.03 09:30
Prinzipiell sollte man erstmal lesen, was ich schreib. Du solltest, wissen, dass die MAC-Adresse fest im Bios der Netzwerkkarte eingebrannt ist. Da lässt sich nichts ändern. Die wird weltweit einmalig vergeben. Ich hab nicht diesen Teil gemeint. Oben hab ich kein einziges Wort über eine MAC-Adresse verloren. Ich sprach immer von IP.
naja, ich hoffe, jetzt sind die Missverständnisse geklärt. Das OSI-Referenzmodell ist mir nicht unbekannt. Ich habe zu Hause ein mehrhundertseitiges Buch, was die einzelnen Schichten aufschlüsselt. Die IP des System, wird die jetzt auf der Netzwerkkarte oder in der Registry gespeichert? Ich denke doch in der Netzwerkkarte, oder?
Naja, ich hoffe, man hat mich jetzt richtig verstanden und wird das was ich schreibe auch richtig lesen und keine Wörter dazudichten, die ich niemals verwand hab. Ich glaub das Wort MAC verwende ich zum ersten Mal in diesem Beitrag, von allen meinen Beiträgen im Forum. 
|
|
Udontknow
      
Beiträge: 2596
Win7
D2006 WIN32, .NET (C#)
|
Verfasst: Mi 16.04.03 10:59
Na, du hast dich schon ein wenig unglücklich ausgedrückt. Was, bitte schön, ist denn eine physikalische IP-Adresse? Da kann man schon auf die MAC kommen. Die IP wird nur im BS gespeichert, es ist, wenn du so willst, schon eine reine Software-Geschichte. Es ist Netzwerkkarten grundsätzlich erst einmal egal, welche Protokolle zur Datenübertragung genutzt werden.
Übrigens: Die MAC ist sehr wohl änderbar. Bei meiner Netzwerkkarte kann ich sie überschreiben.
Cu,
Udontknow
|
|
focus
      
Beiträge: 187
XP, 2k, 98, Me
D6 Prof
|
Verfasst: Mi 16.04.03 11:15
@ShadowCaster
| Zitat: | | Prinzipiell sollte man erstmal lesen, was ich schreib |
1) habe ich und es ist nunmal nicht richtig was du da behauptest
| Zitat: | | Du solltest, wissen, dass die MAC-Adresse fest im Bios der Netzwerkkarte eingebrannt ist |
1) die netzwerkkarte hat kein bios sondern je nachdem wie alt sie ist ein flash oder ein EEPROM
2) siehe oben
| Zitat: | | Die wird weltweit einmalig vergeben |
1) siehe oben
2) wird die benutzte range alle 11 jahre wieder neu aufgerollt
| Zitat: | | Das OSI-Referenzmodell ist mir nicht unbekannt |
dann solltest du wissen das die ip generell nichts mit der netzwerkkarte zutun hat
| Zitat: | | habe zu Hause ein mehrhundertseitiges Buch |
Oi... ;-P
| Zitat: | | Die IP des System, wird die jetzt auf der Netzwerkkarte oder in der Registry gespeichert |
die ist systemabhängig und wird deshalb in der regestry gespeichert
| Zitat: | | und keine Wörter dazudichten, |
wo dichtet denn hier jemand etwas dazu??
gruss
michael
|
|
ShadowCaster 
      
Beiträge: 312
|
Verfasst: Mi 16.04.03 11:58
sorry, mit bios habe ich den falschen Begriff verwendet. Damit meinte ich den ROM der Netzwerkkarte. Darauf müsste die MAC-Adresse abgespeichert sein (keine Behauptung)
Naja, grudsätzlich ist alles was ich sage erstmal eine Aussage und keine Behauptung. Aussage != Behauptung. Egal. Jetzt wisst ihrs ja
Nochmal aufs Dazudichten zurück. Ich kann nichts dafür wenn du behauptest (und das war eine Behauptung), ich hätte oben von Mac-Adresse gesprochen. Das stimmt jedoch nicht. Du hast dir das wohl einfach dazugedichtet oder den Text von mir ganz oben zu schnell überflogen. Da war nie von MAC-Adresse die Rede.
Ich hab auch nicht behauptet, dass die IP auf der Netzwerkkarte gespeichert wird. Wenn du meinen Satz gelesen hättest, wäre dir aufgefallen, dass am Ende ein Fragezeichen stand.
Jedenfalls Fakt ist:
Eine MAC-Adresse wird von der IEEE EINMALIG vergeben und auf die Netzwerkkarte bzw. das Medium, welches eine Netzwerkfunktionalität erhält fest integriert, das heißt auf einem ROM-Chip (von mir fälschlicherweise als Bios bezeichnet ... was natürlich falsch war  ).
IP-Adresse != MAC-Adresse. Eine Mac-Adresse ist auf der IP-Schicht des Osi-Referenzmodells zu finden und die IP-Adresse ist auf der TCP-Schicht zu finden. Das sind zwei ganz unterschiedliche Welten. Das eine hat nichts mit dem anderen zu tun und das hab ich auch nie behauptet, s.o.
Das Buch was ich zu Hause habe, findest du auf www.payer.de/cmc/cmcs0.htm. Es ist wohl eines der besten Abhandlungen die ich kenne für diesen Bereich und vorallem sehr umfangreich. Leider nur schon etwas länger her wo ich das durchgelesen hab. Und da steht auch nichts genaues über den Aufbau einer Netzwerkkarte drinnen, nur über Ethernet-allgemeine Dinge.
Jetzt aber genug von dem Kram da oben und wieder zum Thema zurück. Wenn man davon ausgeht, dass auf unterster Kommunikationsschicht nur Mac-Adressen verwendet werden, dann hast du recht, dass auf der Netzwerkkarte keine IP gecached werden muss. Ich werd mir nochmal ein paar Infos drüber besorgen.
Wenn es nur reicht einen Registryeintrag der Registry zu ändern ist das zwar ganz toll aber dann muss ich windows ja die ganze Registry neu laden lassen und das kostet einen Neustart oder ein Tool, was die Registry neu laden kann. Das erscheint mir zuviel Aufwand. Es muss auch einfacher gehen. In Linux reicht ein Befehl dazu und das wars.
|
|
ShadowCaster 
      
Beiträge: 312
|
Verfasst: Mi 16.04.03 12:00
nochwas auf die Veränderbarkeit der Mac-Adresse. Natürlich kann man die ändern, das ist ja ein ROM-Chip. Aber das ist wohl kaum im Sinne des Erfinders. Man müsste dazu den Chip wohl löschen und dann neu beschreiben aber dann muss es schon ein EPROM sein.
|
|
focus
      
Beiträge: 187
XP, 2k, 98, Me
D6 Prof
|
Verfasst: Mi 16.04.03 12:16
darf man fragen warum du deine regestry neu laden willst?
du musst doch nur die regetry pathen und die bestehende netzwerkverbindung beenden und wieder neu starten...!?!
ist doch das gleiche prinzip wie zu fuss in der regestry was zu ändern...(ausführen/regedit...)
gruss
michael
ps: | Zitat: | Jedenfalls Fakt ist:
Eine MAC-Adresse wird von der IEEE EINMALIG vergeben und auf die Netzwerkkarte bzw. das Medium, welches eine Netzwerkfunktionalität erhält fest integriert, das heißt auf einem ROM-Chip |
fakt ist auch das sie nach ca 11 jahren wiederverwendet werden darf...(wird)
Zuletzt bearbeitet von focus am Mi 16.04.03 12:18, insgesamt 1-mal bearbeitet
|
|
Udontknow
      
Beiträge: 2596
Win7
D2006 WIN32, .NET (C#)
|
Verfasst: Mi 16.04.03 12:17
Ich verstehe jetzt zwar nicht, warum du Monologe um MAC, IP, ISO und deine Büchersammlung hälst, aber egal.
| Zitat: | | Wenn es nur reicht einen Registryeintrag der Registry zu ändern ist das zwar ganz toll aber dann muss ich windows ja die ganze Registry neu laden lassen... |
Wieso muss man "die ganze Registry neu laden", wenn ich einen Wert darin ändere?
Cu,
Udontknow
|
|
ShadowCaster 
      
Beiträge: 312
|
Verfasst: Mi 16.04.03 12:40
Naja, das sagen die Hersteller von Windows (ich kenns halt von WinNT), dass die Registry nur einmalig beim Systemstart geladen wird und deswegen sieht man ja wie jedes Installationsprogramm von Windows (WinNT) den Rechner immer neu starten will bei jeder kleinen Änderung in der Registry. Wenn sich das bei Windows 2000 oder XP geändert hat, dann wäre das ein super Fortschritt für Windows. Naja ich kann schon mit meinem Prog in die Registry schreiben und der Wert ist direkt verfügbar. Habs mal getestet auf win2000. Damit dürfte sich das wohl erledigt haben.
Wenn das also nur der Änderung des Wertes in der Registry bedarf um die IP zu verändern, dann ist es ja wirklich einfach. Es hatte mich nur irritiert weil das bei linux immer anders aussah wie bei windows.
|
|
ShadowCaster 
      
Beiträge: 312
|
Verfasst: Mi 16.04.03 13:04
cool. Hab den Link bei mir in der Registry gefunden wo die IP-Daten drinnen stehen. Wenn sich dann meine IP in Echtzeit ändern würde, wenn ich den Wert ändere, wärs cool. Muss ich dazu die LAN-Connection disconnecten?
|
|
focus
      
Beiträge: 187
XP, 2k, 98, Me
D6 Prof
|
Verfasst: Mi 16.04.03 13:12
| Zitat: | | Hab den Link bei mir in der Registry gefunden wo die IP-Daten drinnen stehen |
wenn du oben nachgesehen hättest hättest du nicht suchen müssen
>>neustarten der verbindung
wie oben bereits erwähnt: JA
gruss
michael
Zuletzt bearbeitet von focus am Mi 16.04.03 13:15, insgesamt 1-mal bearbeitet
|
|
ShadowCaster 
      
Beiträge: 312
|
Verfasst: Mi 16.04.03 13:14
ok, dann nurnoch die Frage: wie mach ich das?
Wäre echt nett, wenn ihr das noch beantworten würdet. Dann kann ich es gleich testen 
|
|
focus
      
Beiträge: 187
XP, 2k, 98, Me
D6 Prof
|
Verfasst: Mi 16.04.03 13:19
Quelltext 1: 2: 3: 4:
| uses WinInet
InternetAutodialHangup(0) |
und vorher vielleicht testen ob überhaupt eine iconn besteht:
www.tipps.delphi-sou.../tut20000709-3.shtml
|
|