Projet

Général

Profil

OperationMutualisationIpv4 » Historique » Version 19

Version 18 (Mehdi Abaakouk, 10/12/2013 18:13) → Version 19/38 (Mehdi Abaakouk, 10/12/2013 18:13)

h1. Projet de mutualisation ipv4 chez tetaneutral:

h2. puppet

dans /etc/network/interfaces, suppresion ipv4, changement ipv6 pour 2a01:6600:8081:ce03::1/64

h3. relay puppet (8140)

sur www, ajouter dans le /etc/rc.local

<pre>
nohup socat TCP4-LISTEN:8140,fork,su=nobody TCP6:puppet.tetaneutral.net:8140 &
</pre>

h2. grenode

grenode est ipv4 only or puppet est ipv6

h2. chiliproject

h3. config réseau

dans /etc/network/interfaces, suppresion ipv4, changement ipv6 pour 2a01:6600:8081:ce02::1/64

h3. Reverse proxy http v4 vers le http de chiliproject en v6, sur www.tetaneutral.net

ajout de /etc/apache2/sites-available/chiliproject.tetaneutral.net:

<pre>
<VirtualHost *:80>
ServerAdmin webmaster@tetaneutral.net
ServerName chiliproject.tetaneutral.net
ServerAlias git.tetaneutral.net
ProxyPreserveHost On
ProxyRequests off
ProxyPass / http://chiliproject6.tetaneutral.net/
ProxyPassReverse / http://chiliproject6.tetaneutral.net/
CustomLog /var/log/apache2/chiliproject.tetaneutral.net-access.log combined
</VirtualHost>
</pre>

taper

<pre>
a2enmod proxy_html proxy
a2ensite chiliproject.tetaneutral.net
/etc/init.d/apache2 reload
</pre>

h3. Configuration du relay sur lists

Ajout d'un relay smtp ipv4 vers ipv6 (relay_domain), dans /etc/postfix/main.cf

<pre>
relay_domains = lists.tetaneutral.net, chiliproject.tetaneutral.net
</pre>

Ajout d'un transport pour ce domain /etc/postfix/transport

<pre>
chiliproject.tetaneutral.net smtp:[chiliproject6.tetaneutral.net]:25
</pre>

Reload de postfix

<pre>
postmap /etc/postfix/transport ; /etc/init.d/postfix reload
</pre>

h3. utiliser lists comme relay smtp pour chiliproject:

sur chiliproject, dans /etc/postfix/main.cf

<pre>
relayhost = smtp.tetaneutral.net
</pre>

h3. relay git(ssh)

sur www, ajouter dans le /etc/rc.local

<pre>
nohup socat TCP4-LISTEN:22,fork,su=nobody TCP6:chiliproject6.tetaneutral.net:22 &
</pre>

h3. mettre l'ipv4 du client de www dans les logs apache de chiliproject

sur chiliproject dans /etc/apache2/conf.d/forwarder

<pre>
LogFormat "%v:%p %h (%{X-Forwarded-For}i) %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h (%{X-Forwarded-For}i) %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h (%{X-Forwarded-For}i) %l %u %t \"%r\" %>s %O" common
</pre>

c'est le format de log apache par défault avec le header X-Forwarded-For entre parenthese

le header X-Forwarded-For est un header ajouter par www en mode reverse proxy pour informer le server web suivant de la vrai ip du client

h3. mise à jour du DNS:

L'enregistrement A pointe vers la machine qui sert de relay (www, lists)
et l'enregistrement AAAA pointe vers la machine chiliproject

<pre>
chiliproject IN A 91.224.149.206 ; www
chiliproject IN AAAA 2a01:6600:8081:ce02::1
chiliproject4 IN A 91.224.149.206 ; www
chiliproject6 IN AAAA 2a01:6600:8081:ce02::1

chiliproject-mx IN A 91.224.149.207 ; lists
chiliproject-mx IN AAAA 2a01:6600:8081:ce02::1 ; lists

chiliproject IN MX 1 chiliproject-mx.tetaneutral.net.
</pre>

h2. pano/celutz

dans /etc/network/interfaces, suppresion ipv4, changement ipv6 pour 2a01:6600:8081:ce04::1/64

h3. Reverse proxy http v4 vers le http de chiliproject en v6, sur www.tetaneutral.net

ajout de /etc/apache2/sites-available/pano.tetaneutral.net:

<pre>
<VirtualHost *:80>
ServerAdmin webmaster@tetaneutral.net
ServerName pano.tetaneutral.net
ServerAlias ServerName celutz.tetaneutral.net
ServerAlias ServerName tsf2.tetaneutral.net
ServerAlias ServerName carto.tetaneutral.net
ProxyPreserveHost On
ProxyRequests off
ProxyPass / http://pano6.tetaneutral.net/
ProxyPassReverse / http://pano6.tetaneutral.net/
CustomLog /var/log/apache2/pano.tetaneutral.net-access.log combined
</VirtualHost>
</pre>

taper

<pre>
a2enmod proxy_html proxy
a2ensite pano.tetaneutral.net
/etc/init.d/apache2 reload
</pre>

h3. Mise à jour DNS:

<pre>
pano IN A 91.224.149.206
pano IN AAAA 2a01:6600:8081:ce04::1
pano6 IN AAAA 2a01:6600:8081:ce04::1
celutz IN CNAME pano.tetaneutral.net.
tsf2 IN CNAME pano.tetaneutral.net.
carto IN CNAME pano.tetaneutral.net.
</pre>

h2. Quelques notes additionnels

Ajout de "flags ipv6" pour /etc/xinetd.d/check_mk dans puppet pour avoir checkmk qui marche en ipv6 only
Mettre le tag 'ipv6_only' si besoin dans /etc/checkmk/main.mk pour les hosts qui n'ont plus de ipv4
Changement dans puppet de l'ip de ttnnlog vers l'ipv6 de h2 (/etc/puppet/manifests/common.pp)
Changement dans puppet du resolver par défault pour mettre l'ipv6 seulement (ie: dans la classe ttnn::server, resolver => "default6" )
Aprés suppression de l'ipv4 public, certain services peut avoir à être redémarré (ie: ntp)