Ubuntu 14.04 : Einrichten mehrerer IP Adressen bei einer Netzwerkkarte

Vielleicht weil ich bequem bin, und gerne die Gegebenheiten übersichtlich gestalte ziehe ich es vor beim Entwickeln der Webseiten mehrere virtuelle Server einzurichten und jedem ist in meinem häuslichen Intranet eine eigene IP Adresse zugeordnet.

Ich habe ziemlich viel Zeit verbracht hier eine Anleitung zu finden, die für mich brauchbar war, keine war zufriedenstellend. Deswegen hier meine eigene :

a) Zuerst das Einrichten der IP Adressen.

Es muss hierzu die Datei “interfaces” im Verzeichnis “network” bearbeitet werden :

$ /etc/network# ls -al
$ /etc/network#
$ -rw-r–r– 1 root root 82 Okt 20 13:04 interfaces

Zweckmässigerweise erstelle ich hiervon zuerst eine Kopie :

$ cp interfaces interfaces.old

Ich aendere die Berechtigungen auf interfaces damit ich die Datei bearbeiten kann :

$ chmod 777 interfaces

Dann ändere ich die Datei “interfaces” wie folgt ab :

auto eth1
iface eth1 inet static
address 192.168.1.100
netmask 255.255.255.0

auto eth1:1
iface eth1:1 inet static
address 192.168.1.101
netmask 255.255.255.0

auto eth1:2
iface eth1:2 inet static
address 192.168.1.102
netmask 255.255.255.0

etc …

Ich speichere die Datei “interfaces” ab und setze die Berechtigungen wieder zurück :

$ chmod 644 interfaces

Anschliessend Neustart des “•network managers”

$ /etc/network# restart network-manager
$ network-manager start/running, process 3079

$:etc/network# ifdown –all
$:/etc/network# ifup –all

Jetzt sollten alle IP Adressen verfügbar sein. Falls nicht, bitte Neustart des Computers.

b) Nun das Einrichten der virtuellen Server.

Zu jedem virtuellen Server gehoert eine Konfigurationsdatei. Ich benenne die Konfigurationsdatei nach der IP Adresse auf die der Server antworten soll.

Die Dateien sind jeweils folgendermassen aufgebaut :


DocumentRoot /var/www/html/105
ServerName 192.168.1.105

# Other directives here …

DirectoryIndex index.php
DirectoryIndex index.html

Ich kopiere die Konfigurationsdatei in das Verzeichnis “sites-available” :

dann sehe ich nach welche Websites bereits laufen :

$:/etc/apache2# a2dissite
Your choices are: 100 101
Which site(s) do you want to disable (wildcards ok)?

Anschliessend das aktivieren des neuen Websites :

$:/etc/apache2# a2ensite
Your choices are: 102 103
Which site(s) do you want to enable (wildcards ok)?
102 103
Enabling site 102 103.
To activate the new configuration, you need to run:
service apache2 reload

$:/etc/apache2# service apache2 reload
* Reloading web server apache2 *
* Apache2 is not running
$:/etc/apache2# service apache2 restart

Das war’s.