PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : verständnisprob: IP adressen und domain namen



Freekazonid
07.09.03, 21:07
moinsen

habe heute wieder ein kapitelchen unix network programming weiter gemacht und dazu auch ein programm gebastelt um das erlernte auszuprobieren.

man übergibt dem programm einen hostnamen, der gibt zurück den officiellen hostnamen, aliase und die ipadressen

ich habe das mal auf einige sachen angewendet, neben sachen die ich so erwartet habe (zb das bei www.microsoft.com als offizieller hostname irgendwas mit akami kam, oder das ich feststelle das der webhost dienst von freenet garnicht von freenet ist sondern von lifemedien) versteh ich aber einiges nicht.

ich dachte DNS ist ein dienst, der ip adressen in namen umwandelt um es einfacher zu machen sich sachen zu merken. also ob man nun den namen oder die ip nimmt, das ziel ist dasselbe.

aber mit meinen expirementen musste ich feststellen das dem garnicht so ist. beispiel:


./srvecho www.yaspb.de

Officiel Hostname: www.yaspb.de

alias: (null)

80.239.146.124


höh? geb ich im browser www.yaspb.de ein komme ich zum board. gebe ich die ip an will er einen user namen und ein pass. ganz offensichtlich zum login der leute die da ihren webspace haben?

noch eins.



./srvecho www.gojaegerhof.com

Officiel Hostname: www011.lifemedien.de

alias: www.gojaegerhof.com

62.104.23.219


wie gesagt ist das bei freenet gemietet worden, läuft über lifemedien. aber gebt ma statt der adresse die ip ein. woher merkt der denn ob ip oder adresse? wo ist da der unterschied



ich hoffe ihr könnt erahnen wo mein verständnis problem liegt ;)

danke

-Sensemann-
07.09.03, 21:09
DNS = Domain Name Service (Server?)

Computer + domainname -> Anfrage an DNS -> auflösung des Namens in eine IP

-> rückgabe der IP an computer -> anwahl der Seite


stimmt das so ?

Pixcy
07.09.03, 22:32
Du kannst für einen Rechner mit nur einer IP Adresse mehrere Hostnames benutzen. Je nachdem, mit welchem Hostnamen der Browser oder welches Programm auch immer eine Anfrage an den Server stellt, gibt dieser die entsprechenden Antworten.

Im Apache (httpd.conf) kannst du das bspweise unter Aliase einstellen. Wenn du nur die IP Adresse im Browser eingibst, kriegst du das default Directory, wenn du einen Hostnamen oder einen Hostnamen mit einer anderen Subdomain eingibst, gibt dir der Server als Antwort eine andere Datei / Verzeichnis.

Eigentlich ganz simpel. So als würdest du eine MSN Nummer (ISDN) wählen - dann klingelt ja auch nicht der Hauptanschluss des Teilnehmers, sondern nur ein bestimmtes Telefon / Fax / etc.., obwohl nur eine ISDN-Leitung vorhanden ist (vgl. IP Adresse = ISDN Leitung / Hostname = MSN Nummer) ...

mfG Tim

Freekazonid
08.09.03, 09:36
achso ja so theorethisch sieht das ganz logisch aus. aber wie funktioniert das wirklich? wenn ich hostnamen eingebe, wird der doch letzenldich auch nur eine ip adresse umgewandelt. wie kann der server unterscheiden, ob jemand nun www.linuxforen.de , www.mrunix.de oder 213.30.246.148 eingegeben hat? denn _im prinzip_ sind alle 3 sachen ja das gleiche (host name wird in ip aufgelöst, steht immer dieselbe ip).

du sagtest ja der server unterscheidet das im falle von apache zb durch die aliase. ich kenne mich mit apache nicht aus aber: funktioniert das dann so: jemand öffnet den webbrowser, gibt www.linuxforen.de ein, die adresse wird in die ipadresse aufgelöst damit sie das ziel findet sie kommt am apache server an. im "ippacket" ist aber die information noch enthalten das der aufruf www.linuxforen.de galt -> der apache guckt in der alias datei nach, wo unter www.linuxforen.de die datei /linuxforen/blubb/index steht und gibt sie als antwort

ist das so ungefähr richtig?

Doh!
08.09.03, 09:44
Original geschrieben von Freekazonid
achso ja so theorethisch sieht das ganz logisch aus. aber wie funktioniert das wirklich? wenn ich hostnamen eingebe, wird der doch letzenldich auch nur eine ip adresse umgewandelt. wie kann der server unterscheiden, ob jemand nun www.linuxforen.de , www.mrunix.de oder 213.30.246.148 eingegeben hat? denn _im prinzip_ sind alle 3 sachen ja das gleiche (host name wird in ip aufgelöst, steht immer dieselbe ip).


Wenn Du eine Abfrage im Browser machst, indem Du eine URL eingibst, stellt Dein Rechner eine GET Abfrage (GET ist ein http-Kommando) an den Apache. Der Apache bekommt mit dieser get-Abfrage unter anderem auch die URL, die Du eingegeben hast, mitgeliefert. Anhand dieser kann dann der Apache Dir die richtige Seite geben. Wir haben zum Beispiel in der Firma auch einen Webserver, der drei völlig voneinander unabhängige Web-Angebote liefert - alles über eine IP!

Freekazonid
08.09.03, 10:14
Original geschrieben von Doh!
Wenn Du eine Abfrage im Browser machst, indem Du eine URL eingibst, stellt Dein Rechner eine GET Abfrage (GET ist ein http-Kommando) an den Apache. Der Apache bekommt mit dieser get-Abfrage unter anderem auch die URL, die Du eingegeben hast, mitgeliefert. Anhand dieser kann dann der Apache Dir die richtige Seite geben. Wir haben zum Beispiel in der Firma auch einen Webserver, der drei völlig voneinander unabhängige Web-Angebote liefert - alles über eine IP!

achso, okay dann ist das nun klar :) jedenfalls im falle von apache. aber geht das auch in anderen fällen (zb ftp?). ich habe zb einen kleinen ftp server auf dem router laufen; damit der immer erreichbar ist ist er bei dyndns angemeldet. sagen wir er hat die domain blubb.bla.xy. wenn man sich damit connected ist das gleich die ip die mir der ISP zugewiesen hat und die ftp connection steht

könnte man zb eine zweite dyndns adresse nehmen, die auf die selbe ip verweist ( meinen home router), aber wenn man über die zum ftp connected kriegt man einen anderen inhalt. zb blubb.bla.xy für demos und da.die.du für patches: beides der selbe server, die selbe ip usw, aber jenachdem wohin man connected kriegt man was anderes angezeigt

mich interessiert halt ob das auich allgemein möglich ist :)

Freekazonid
09.09.03, 12:59
*push*

bernie
09.09.03, 13:30
Hi,

das mit FTP geht nicht, weil FTP keine Virtual Hosts unterstützt. HTTP kann das auch erst seit Version 1.1. Man unterscheidet das per Usernamen

Ciao, Bernie

Freekazonid
09.09.03, 16:27
Original geschrieben von bernie
Hi,

das mit FTP geht nicht, weil FTP keine Virtual Hosts unterstützt. HTTP kann das auch erst seit Version 1.1. Man unterscheidet das per Usernamen

Ciao, Bernie

also versteh ich das richtig das das mit dem mehrere hosts aber nur eine ip adresse und der unterscheidung der hostnamen eine feature von HTTP bzw deren webserver sind und so selber nix mit DNS zu tun haben?

Jasper
10.09.03, 00:24
Original geschrieben von Freekazonid
also versteh ich das richtig das das mit dem mehrere hosts aber nur eine ip adresse und der unterscheidung der hostnamen eine feature von HTTP bzw deren webserver sind und so selber nix mit DNS zu tun haben?

das siehst du ganz richtig. ist ne spezialität des http-protokolls.

-j

Doh!
10.09.03, 09:08
Original geschrieben von bernie
Hi,

das mit FTP geht nicht, weil FTP keine Virtual Hosts unterstützt. HTTP kann das auch erst seit Version 1.1. Man unterscheidet das per Usernamen

Ciao, Bernie

Aber sicher geht dat, habe selbst eine Büchse, bei der das geht.

Hier auch eine Examplekonfig:
http://www.proftpd.org/docs/configs/virtual.conf

Ich will Dir nicht zu nahe treten, aber bevor ich hier was poste checke ich das immer gegen. Bitte mach das auch, Du hast ja schon genug Posts auf dem Buckel

Freekazonid
10.09.03, 09:30
ganz schön kompliziert das ganze, aber ich denke ich habs jetzt begriffen. vielen dank euch allen!

Jasper
10.09.03, 09:34
Original geschrieben von Doh!
Aber sicher geht dat, habe selbst eine Büchse, bei der das geht.

Hier auch eine Examplekonfig:
http://www.proftpd.org/docs/configs/virtual.conf

Ich will Dir nicht zu nahe treten, aber bevor ich hier was poste checke ich das immer gegen. Bitte mach das auch, Du hast ja schon genug Posts auf dem Buckel

du hast aber schon verifiziert, dass virtualhosts bei proftpd != virtualhosts bei apache. bernie bezog sich auf die art und weise, wie apache virtualhosts verwendet. (mitgeben des servernamens im http-header "host").

korrektur zu bernies post:
das ist aber nicht erst seit http/1.1 möglich, nur bei http/1.1 ist es obligatorisch.

-j

Flightbase
10.09.03, 12:24
i habs mal verschoben. auch wenns ums allgemeine verständnis geht...

greets, Nik

Doh!
10.09.03, 14:00
Original geschrieben von Jasper
du hast aber schon verifiziert, dass virtualhosts bei proftpd != virtualhosts bei apache. bernie bezog sich auf die art und weise, wie apache virtualhosts verwendet. (mitgeben des servernamens im http-header "host").

korrektur zu bernies post:
das ist aber nicht erst seit http/1.1 möglich, nur bei http/1.1 ist es obligatorisch.

-j

Jajaja, ich halt ja schon mein großes Maul. Ich werde einen Tag nur M$ Produkte benutzen... Sorry bernie :rolleyes: