Die Unterschiede verstehen
1. Einführung und Überblick
In der digitalen Welt begegnen uns täglich verschiedene Arten von Bezeichnern für Ressourcen im Internet. Die drei wichtigsten Konzepte sind:
- URI (Uniform Resource Identifier)
- URL (Uniform Resource Locator)
- FQDN (Fully Qualified Domain Name)
Diese Begriffe werden oft verwechselt oder synonym verwendet, haben aber wichtige Unterschiede in ihrer Definition und Anwendung.
2. URI – Uniform Resource Identifier
Definition
Eine URI ist ein eindeutiger Bezeichner für eine Ressource. Sie ist das übergeordnete Konzept, das alle Arten von Ressourcen-Identifikatoren umfasst.
Eigenschaften
- Oberbegriff für alle Ressourcen-Identifikatoren
- Kann sowohl Lokalisierung als auch reine Benennung umfassen
- Definiert durch RFC 3986
Syntax-Schema
Beispiel: https://example.com/path/to/resource?param=value#section
Kategorien von URIs
- URL (Uniform Resource Locator) – zeigt WO eine Ressource ist
- URN (Uniform Resource Name) – sagt WAS eine Ressource ist
Beispiele für URIs
https://www.google.com/search?q=test
(URL)mailto:info@example.com
(URL)urn:isbn:978-3-16-148410-0
(URN)ftp://files.example.com/document.pdf
(URL)tel:+49-30-12345678
(URL)
3. URL – Uniform Resource Locator
Definition
Eine URL ist eine spezielle Art von URI, die nicht nur eine Ressource identifiziert, sondern auch angibt, wo sie sich befindet und wie darauf zugegriffen werden kann.
Eigenschaften
- Subset von URI
- Gibt Lokation und Zugriffsmethode an
- Immer eine URI, aber nicht jede URI ist eine URL
Detaillierte Anatomie einer URL
https://user:password@www.example.com:8080/path/to/page?name=value&foo=bar#section
├── https:// → Schema/Protokoll
├── user:password@ → Benutzerinformationen (optional)
├── www.example.com → Hostname/Domain
├── :8080 → Port (optional)
├── /path/to/page → Pfad
├── ?name=value... → Query Parameter
└── #section → Fragment/Anker
Komponenten im Detail
Schema/Protokoll:
https://
– Sicheres HTTPhttp://
– Hypertext Transfer Protocolftp://
– File Transfer Protocolmailto:
– E-Mailfile://
– Lokale Datei
Authority (Autorität):
- Hostname oder IP-Adresse
- Optional: Port-Nummer
- Optional: Benutzerinformationen
Pfad:
- Hierarchische Struktur
- Zeigt auf spezifische Ressource
Query:
- Parameter für die Ressource
- Format:
key=value&key2=value2
Fragment:
- Verweis auf Teil der Ressource
- Wird nicht an Server gesendet
URL-Kategorien
- Absolute URLs: Vollständige Adresse mit Schema
- Relative URLs: Bezug zur aktuellen Basis-URL
- Protocol-relative URLs: Beginnen mit
//
Beispiele
Absolute URL:
https://www.example.com/products/laptop.html
Relative URL:
/products/laptop.html
../images/logo.png
Protocol-relative URL:
//cdn.example.com/script.js
4. FQDN – Fully Qualified Domain Name
Definition
Ein FQDN ist ein vollständiger Domain-Name, der die exakte Position eines Hosts in der DNS-Hierarchie angibt.
Eigenschaften
- Eindeutige Identifikation im DNS-System
- Hierarchische Struktur von rechts nach links
- Endet theoretisch mit einem Punkt (Root-Domain ist immer ein Leerzeichen)
Anatomie eines FQDN
www.shop.example.com.
├── com. → Top-Level Domain (TLD)
├── example. → Second-Level Domain
├── shop. → Subdomain
├── www. → Host/Subdomain
└── . → Root (fast immer weggelassen Root wird durch ein Leerzeichen gekennzeichnet)
DNS-Hierarchie verstehen
Root (. )
├── com
│ ├── example
│ │ ├── shop
│ │ │ └── www
│ │ └── mail
│ └── google
├── de
│ ├── wikipedia
│ └── bundestag
└── org
├── mozilla
└── apache
FQDN vs. Partial Domain Name
FQDN: mail.company.example.com
Partial: mail.company (im lokalen Netzwerk)
Verwendungsbereiche
- DNS-Konfiguration
- E-Mail-Server Konfiguration
- SSL-Zertifikate
- Netzwerk-Administration
- Server-Konfiguration
5. Vergleich und Abgrenzung
Hierarchische Beziehung
URI (Oberkategorie)
├── URL (Lokalisierung + Zugriff)
└── URN (Nur Benennung)
FQDN (Domain-Name System)
└── Teil von URLs mit http/https Schema
Unterscheidungsmerkmale
Aspekt | URI | URL | FQDN |
---|---|---|---|
Zweck | Identifikation | Lokalisierung + Zugriff | DNS-Identifikation |
Umfang | Oberbegriff | Subset von URI | Domain-Name |
Schema | Beliebig | Definiert Protokoll | Kein Schema |
Beispiel | urn:isbn:123 | https://example.com | www.example.com |
Venn-Diagramm Konzept
┌─────────────────────────────────────┐
│ URI (Alle Identifikatoren) │
│ ┌─────────────────────────────┐ │
│ │ URL (Mit Lokalisierung) │ │
│ │ ┌─────────────────────┐ │ │
│ │ │ HTTP/HTTPS URLs │ │ │
│ │ │ (enthalten FQDN) │ │ │
│ │ └─────────────────────┘ │ │
│ └─────────────────────────────┘ │
└─────────────────────────────────────┘
┌─────────────────┐
│ FQDN │
│ (DNS-Namen) │
└─────────────────┘
6. Praktische Beispiele und Anwendung
Beispiel 1: Webseite
URI/URL: https://www.wikipedia.org/wiki/Internet
FQDN: www.wikipedia.org
Beispiel 2: E-Mail
URI/URL: mailto:support@company.example.com
FQDN: company.example.com (Mail-Server)
Beispiel 3: FTP-Server
URI/URL: ftp://files.company.com/public/document.pdf
FQDN: files.company.com
Beispiel 4: API-Endpunkt
URI/URL: https://api.service.com/v1/users/123?format=json
FQDN: api.service.com
7. Häufige Missverständnisse
Missverständnis 1: „URL und URI sind dasselbe“
Realität: URL ist eine spezielle Art von URI
Missverständnis 2: „FQDN ist Teil der URL“
Realität: FQDN kann Teil einer URL sein, existiert aber unabhängig
Missverständnis 3: „Alle URIs sind URLs“
Realität: URNs sind URIs, aber keine URLs
Missverständnis 4: „Der Domain-Name ist immer ein FQDN“
Realität: Nur vollständige Domain-Namen sind FQDNs
8. Technische Spezifikationen
Relevante RFC-Standards
- RFC 3986: URI Generic Syntax
- RFC 1738: Uniform Resource Locators (URL)
- RFC 1035: Domain Names – Implementation and Specification
- RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax (obsolet)
Zeichenbeschränkungen
URI/URL erlaubte Zeichen:
- Unreserved: A-Z a-z 0-9 – . _ ~
- Reserved: ! * ‚ ( ) ; : @ & = + $ , / ? # [ ]
- Percent-Encoding für andere Zeichen: %20 für Leerzeichen
FQDN Beschränkungen:
- Nur alphanumerische Zeichen und Bindestriche
- Maximal 63 Zeichen pro Label
- Maximal 253 Zeichen gesamt
- Case-insensitive
9. Sicherheitsaspekte
URL-basierte Angriffe
- URL-Manipulation: Änderung von Parametern
- Open Redirect: Weiterleitung zu schädlichen Seiten
- Path Traversal: Zugriff auf unerlaubte Verzeichnisse
FQDN-Sicherheit
- DNS-Spoofing: Falsche IP-Auflösung
- Subdomain-Takeover: Übernahme ungenutzter Subdomains
- Typosquatting: Ähnliche Domain-Namen
Best Practices
- URL-Validierung und -Sanitization
- HTTPS für sichere Übertragung
- DNS-over-HTTPS (DoH) oder DNS-over-TLS (DoT)
- Regelmäßige Überprüfung von Subdomains
10. Zukunft und Entwicklung
IPv6 und URLs
http://[2001:db8::1]:8080/path
Internationalized Domain Names (IDN)
FQDN: münchen.de
Punycode: xn--mnchen-3ya.de
Neue URI-Schemas
magnet:
für P2P-Netzwerkebitcoin:
für Kryptowährungendid:
für dezentrale Identifikatoren
11. Zusammenfassung
Kernpunkte
- URI ist der Oberbegriff für alle Ressourcen-Identifikatoren
- URL ist eine spezielle URI, die Lokalisierung und Zugriff definiert
- FQDN ist ein vollständiger Domain-Name im DNS-System
- Alle drei Konzepte haben spezifische Anwendungsbereiche
- Verständnis dieser Unterschiede ist essentiell für Web-Entwicklung
Praktische Relevanz
- Entwickler: Korrekte Implementierung von APIs und Web-Services
- Systemadministratoren: DNS-Konfiguration und Server-Setup
- Sicherheitsexperten: Verständnis für Angriffsvektoren
- Alle IT-Professionals: Grundlegendes Verständnis der Internet-Architektur
Schlüssel zum Merken
- URI: „Identifiziert etwas“
- URL: „Zeigt wo etwas ist und wie man es erreicht“
- FQDN: „Vollständiger Name im DNS-System“