> For the complete documentation index, see [llms.txt](https://docs.clore.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.clore.ai/clore.ai/clore.ai-eng-de/fur-hosts/installing-clore-hosting/network-requirements.md).

# Netzwerkanforderungen

Um GPU-Server erfolgreich auf Clore.ai zu hosten, muss Ihr Netzwerk diese Anforderungen erfüllen.

## Mindestanforderungen

| Parameter                | Anforderung                                  |
| ------------------------ | -------------------------------------------- |
| Download-Geschwindigkeit | Mindestens 100 Mbit/s                        |
| Upload-Geschwindigkeit   | Mindestens 100 Mbit/s                        |
| Latenz                   | < 100 ms zu den wichtigsten Regionen         |
| IP-Typ                   | Statisch oder dynamisch (statisch bevorzugt) |

> **Hinweis:** Eine höhere Bandbreite führt zu besseren Serverbewertungen und mehr Vermietungen.

## Erforderliche Ports

Die folgenden Ports müssen aus dem Internet erreichbar sein:

| Port              | Protokoll | Zweck                                           |
| ----------------- | --------- | ----------------------------------------------- |
| 22                | TCP       | SSH-Zugriff (oder benutzerdefinierter SSH-Port) |
| 8080              | TCP       | Jupyter Notebook (falls aktiviert)              |
| 3000-4000         | TCP       | Anwendungsports (konfigurierbar)                |
| Benutzerdefiniert | TCP/UDP   | Wie in den Servereinstellungen definiert        |

## Firewall-Konfiguration

### UFW (Ubuntu)

```bash
# SSH zulassen
sudo ufw allow 22/tcp

# Jupyter zulassen
sudo ufw allow 8080/tcp

# Portbereich für Anwendungen zulassen
sudo ufw allow 3000:4000/tcp

# Firewall aktivieren
sudo ufw enable
```

### iptables

```bash
# SSH zulassen
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# Jupyter zulassen
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT

# Portbereich zulassen
iptables -A INPUT -p tcp --dport 3000:4000 -j ACCEPT

# Regeln speichern
iptables-save > /etc/iptables/rules.v4
```

## NAT / Portweiterleitung

Wenn sich Ihr Server hinter einem Router befindet:

1. **Rufen Sie das Admin-Panel des Routers auf** (normalerweise 192.168.1.1)
2. **Abschnitt für Portweiterleitung suchen**
3. **Erforderliche Ports weiterleiten** an die interne IP Ihres Servers
4. **Statische interne IP festlegen** für Ihren Server

### Beispiel für Portweiterleitungsregeln

| Externer Port | Interne IP    | Interner Port | Protokoll |
| ------------- | ------------- | ------------- | --------- |
| 22022         | 192.168.1.100 | 22            | TCP       |
| 8080          | 192.168.1.100 | 8080          | TCP       |

## Statische vs. dynamische IP

### Statische IP (empfohlen)

* Konstante Verbindung für Mieter
* Besser für DNS und Lesezeichen
* Höhere Zuverlässigkeitsbewertung des Servers

### Dynamische IP

* Funktioniert, erfordert aber einen DDNS-Dienst
* IP-Änderungen können Vermietungen kurzzeitig unterbrechen
* Konfigurieren Sie den DDNS-Client auf Ihrem Server:

```bash
# Beispiel mit ddclient
sudo apt install ddclient
sudo nano /etc/ddclient.conf
```

## Überlegungen zur Bandbreite

### Auswirkung auf die Einnahmen

| Geschwindigkeit | Auswirkung                                  |
| --------------- | ------------------------------------------- |
| 100 Mbit/s      | Minimum – grundlegende Vermietungen         |
| 500 Mbit/s      | Gut – geeignet für die meisten ML-Workloads |
| 1 Gbit/s+       | Ausgezeichnet – zieht Premium-Mieter an     |

### Bandbreite überwachen

```bash
# Überwachungstool installieren
sudo apt install iftop

# In Echtzeit überwachen
sudo iftop -i eth0
```

## Netzwerktests

### Geschwindigkeitstest

```bash
# speedtest installieren
sudo apt install speedtest-cli

# Test ausführen
speedtest-cli
```

### Latenztest

```bash
# Test zu gängigen Regionen
ping -c 10 8.8.8.8        # Google DNS
ping -c 10 1.1.1.1        # Cloudflare
```

### Port-Erreichbarkeitstest

Überprüfen Sie von außerhalb Ihres Netzwerks, ob die Ports offen sind:

```bash
# Mit nmap von einem anderen Rechner aus
nmap -p 22,8080 YOUR_PUBLIC_IP

# Oder verwenden Sie einen Online-Port-Checker
# https://www.yougetsignal.com/tools/open-ports/
```

## Fehlerbehebung

### Ports nicht erreichbar

1. Firewall-Regeln auf dem Server überprüfen
2. Portweiterleitung am Router überprüfen
3. ISP kontaktieren – einige blockieren das Hosting
4. Versuchen Sie andere Portnummern

### Langsame Verbindung

1. Geschwindigkeitstest ausführen
2. Auf Bandbreitendrosselung prüfen
3. Erwägen Sie ein Upgrade Ihres Internet-Tarifs
4. Optimieren Sie die Netzwerkeinstellungen des Servers:

```bash
# Netzwerkpuffergrößen erhöhen
sudo sysctl -w net.core.rmem_max=16777216
sudo sysctl -w net.core.wmem_max=16777216
```

### Verbindungsabbrüche

1. Auf IP-Adressänderungen prüfen
2. Router-Stabilität überprüfen
3. Systemprotokolle überwachen: `dmesg | grep -i network`
4. Erwägen Sie die Verwendung von Ethernet statt WLAN


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.clore.ai/clore.ai/clore.ai-eng-de/fur-hosts/installing-clore-hosting/network-requirements.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
