Catégorie : Réseau

9 février 2017 /

Par défaut, Centos reçoit sa configuration TCP/IP par le DHCP de votre réseau.
Pour modifier cela et lui donner une adresse ip statique, il suffit de reproduire ces différentes étapes:

On commence par éditer le fichier correspondant à notre interface (ici eth0), /etc/sysconfig/network-scripts/ifcfg-eth0 :

vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE="eth0"
BOOTPROTO="dhcp"
NM_CONTROLLED="yes"
ONBOOT="no"
TYPE="Ethernet"

On va modifier et ajouter des paramètres de cette façon:

DEVICE=eth0 #Nom de l'interface
BOOTPROTO=static #Passe en mode static au lieu DHCP
NM_CONTROLLED=no #Pas de contrôle via NetworkManager
IPADDR=10.148.14.8 #Adresse IP de la machine
GATEWAY=10.148.14.1 #Passerelle, si non définie dans le fichier /etc/sysconfig/network
NETMASK=255.255.255.0 #Masque
BROADCAST=192.168.0.255 #Adresse de diffusion, optionnel.
NETWORK=192.168.0.0 #Réseau, optionnel.
HWADDR=AA:BB:CC:DD:EE:FF #Adresse MAC de la carte, optionnel.
ONBOOT=yes #Activation l'interface au boot
DNS1=8.8.8.8 #Spécifie l'adresse du serveur DNS primaire, optionnel.
DNS2=8.8.4.4 #Spécifie l'adresse du serveur DNS secondaire, optionnel.
PEERDNS=yes #Inscris la valeur des paramètres DNS1 et DNS2 dans /etc/resolv.conf, optionnel.
TYPE=Ethernet #Type de connexion (IPsec, Ethernet, Wireless), optionnel.

Pour info, il n’est pas obligatoire de spécifier le réseau ou l’adresse de diffusion, car cela est fait automatiquement par ipcalc.

Nous allons également modifier les paramètres généraux du système:

vi /etc/sysconfig/network

NETWORKING=yes # Active le réseau
HOSTNAME=starmate #Nom de la machine
NETWORKING_IPV6=no #Désactivation de l'ipv6
GATEWAY=192.168.0.1 #Passerelle, si non définie dans la configuration de la carte.

 

Puis on va définir le DNS dans /etc/resolv.conf, (si non défini dans la configuration de la carte) :

> /etc/resolv.conf
vi /etc/resolv.conf

nameserver 8.8.8.8
nameserver 8.8.4.4

Il ne nous reste plus qu’a redémarrer le service réseau de CentOS:

service network restart

8 février 2017 /

Par défaut, Ubuntu reçoit sa configuration TCP/IP par le DHCP de votre réseau.
Pour modifier cela et lui donner une adresse ip statique, il suffit de reproduire ces différentes étapes:

On commence par éditer le fichier /etc/network/interfaces :

vi /etc/network/interfaces

#Loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto ens160
iface ens160 inet dhcp

On va modifier (ou ajouter si absente) la partie correspondant à notre interface (ici ens160) de cette façon:

# The primary network interface
auto ens160
#iface ens160 inet dhcp
iface ens160 inet static
address 192.168.0.100
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1
dns-nameservers 8.8.8.8 8.8.4.4

Si votre version d’Ubuntu est inférieur à 14.04, il faudra plutôt définir le DNS dans /etc/resolv.conf:

vi /etc/resolv.conf

nameserver 8.8.8.8
nameserver 8.8.4.4

Ensuite on retire l’adresse que le DHCP nous a fourni via cette commande:

ip addr flush ens160

Il suffit maintenant de redémarrer notre interface réseau pour recharger la configuration.

ifdown ens160
ifup ens160

Si cela ne fonctionne pas, redémarrez votre machine!

11 janvier 2017 /

Le but de la manœuvre est de brasser des ports HBA (auquel est lié un WWN unique pour chaque port) d’un serveur sur deux switchs Brocade (pour la tolérance au panne), pour qu’il soit raccordé à une baie de stockage VNX5300.

Les WWNs à raccorder sont les suivant:

WWN du port HBA n°1 du serveur => 10:00:00:90:fa:13:cc:44
WWN du port HBA n°2 du serveur => 10:00:00:90:fa:13:cc:45

Pour y parvenir, nous allons commencer par raccorder via une fibre optique un port sur le switch n°1 et le deuxième sur le switch n°2.
Les ports du switch Brocade sont numérotés, cela va nous faciliter la tache. Je vais donc brasser sur le port n°3 pour chacun des switchs.

Une fois que cela est fait, en se connectant via SSH aux deux switchs, on peux voir/vérifier le numéro de WWN connecté au port n°3 via la commande « switchshow« .

Switch n°1:

switchshow

........
Index Port Address Media Speed State     Proto
==============================================
0   0   310c00   id     N8   No_Light    FC
1   1   310400   id     N8   No_Light    FC
2   2   310200   id     8G   No_Light    FC
3   3   313600   id     8G   Online      FC  F-Port  10:00:00:90:fa:13:cc:45
4   4   310100   id     N8   Online      FC  F-Port  xx:xx:xx:xx:xx:xx:xx:xx
5   5   310500   id     N8   No_Light    FC
6   6   310600   id     N8   No_Light    FC
7   7   310700   id     N8   No_Light    FC
....

Switch n°2:

switchshow

.....
Index Port Address Media Speed State     Proto
==============================================
0   0   320000   id     N8   Online      FC  F-Port  xx:xx:xx:xx:xx:xx:xx:xx
1   1   320100   id     N8   Online      FC  F-Port  xx:xx:xx:xx:xx:xx:xx:xx
2   2   320200   id     N8   No_Light    FC
3   3   320300   id     N8   Online      FC  F-Port  10:00:00:90:fa:13:cc:44
4   4   320400   id     N8   No_Light    FC
5   5   320500   id     N8   No_Light    FC
6   6   320600   id     N8   No_Light    FC
7   7   320700   id     N8   No_Light    FC
8   8   320800   id     N8   Online      FC  F-Port  xx:xx:xx:xx:xx:xx:xx:xx
.....

Les numéros WWNs des ports HBA, correspondent bien à ceux de la machine physique que l’on vient de brasser.

Si il ne correspond pas à celui désiré, c’est que vous vous êtes trompé de port  lors du branchement sur le serveur.
Il va falloir alors trouver le bon port, en les testant un part un (débranchement+branchement+commande switchshow).

Avant de créer une nouvelle zone, nous allons sauvegarder la configuration des deux switchs pour palier à toutes mauvaises manipulations.
Dans le cas présent, j’utilise un serveur FTP acceptant les connections en mode anonymous, et ayant pour IP, 10.0.0.27:

Switch n°1:

configupload -all -p ftp 10.0.0.27,anonymous,sauvegarde_switch_1.txt

Switch n°2:

configupload -all -p ftp 10.0.0.27,anonymous,sauvegarde_switch_2.txt

Je vais également sauvegarder la sortie standard dans un fichier texte, de la commande cfgshow sur les deux switchs.

Switch n°1:

cfgshow

Switch n°2:

cfgshow

Maintenant que cela est fait, nous allons pouvoir créer notre zone en toute sérenité.

On commence donc par créer un alias pour chacun des identifiants WWNs des ports HBA:

Switch n°1:

alicreate "CTZLABTGLB001_emulex2", "10:00:00:90:fa:13:cc:45"

Switch n°2:

alicreate "CTZLABTGLB001_emulex1", "10:00:00:90:fa:13:cc:44"

Ensuite nous allons créer une zone spécifique:

Switch n°1:

zonecreate "CTZLABTGLB001_VNX", "CTZLABTGLB001_emulex2"

Switch n°2:

zonecreate "CTZLABTGLB001_VNX", "CTZLABTGLB001_emulex1"

Il faut maintenant ajouter à la zone, les alias des WWNs des ports HBA qui eux sont connectés à la baie VNX5300 et non pas au serveur.
Pour les identifier (déjà existant), nous passons par la commande alishow:

Switch n°1:

alishow

...
alias: VNX5300_SPA_FC1
50:06:01:65:3d:e0:2d:7e
alias: VNX5300_SPB_FC0
50:06:01:6c:3d:e0:2d:7e
...

Switch n°2:

alishow

...
alias: VNX5300_SPA_FC0
50:06:01:64:3d:e0:2d:7e
alias: VNX5300_SPB_FC1
50:06:01:6d:3d:e0:2d:7e
....

Nous connaissons maintenant les alias pour les WWNs branchés sur la baie de stockage VNX5300.

Nous allons donc les ajouter à la zone créée précédemment:

Switch n°1:

zoneadd "CTZLABTGLB001_VNX", "VNX5300_SPA_FC1; VNX5300_SPB_FC0"

Switch n°2:

zoneadd "CTZLABTGLB001_VNX", "VNX5300_SPA_FC0; VNX5300_SPB_FC1"

 

On peut voir la configuration des zones existantes  et celle que l’on vient de faire via la commande zoneshow:

Switch n°1:

zoneshow

Switch n°2:

zoneshow

Si cela correspond bien à la configuration voulu, nous allons enregistrer cette configuration.

Pour cela nous devons connaître le nom utilisé pour la configuration (par défaut, le nom de la configuration est « DEFAULT« ), via cette commande:

Switch n°1:

cfgshow | grep cfg

....
cfg:   DEFAULT

Switch n°2:

cfgshow | grep cfg

....
cfg:   DEFAULT

 

Maintenant que nous connaissons le nom de la configuration, nous allons lui ajouter notre zone:

Switch n°1:

cfgadd "DEFAULT", "CTZLABTGLB001_VNX"

Switch n°2:

cfgadd "DEFAULT", "CTZLABTGLB001_VNX"

 

On sauvegarde:

Switch n°1:

cfgsave

Switch n°2:

cfgsave

 

Il ne nous reste plus qu’à l’activer:

Switch n°1:

cfgenable "DEFAULT"

Switch n°2:

cfgenable "DEFAULT"

Voila,

il ne reste plus qu’a y affecter des LUNs.

14 novembre 2016 /

Le Domain Name System (ou DNS, système de noms de domaine) est un service permettant de traduire un nom de domaine en informations de plusieurs types qui y sont associées, notamment en adresses IP de la machine portant ce nom.

BIND (pour Berkeley Internet Name Daemon, ou parfois Berkeley Internet Name Domain) est le serveur DNS le plus utilisé sur Internet, spécialement sur les systèmes de type UNIX et est devenu de facto un standard. La première version de BIND a été conçue par quatre étudiants diplômés de l’Université de Californie (Berkeley) sur la base du système d’exploitation BSD 4.3

Nous allons installer Bind sur un serveur CentOS 6.5 (configuration également testée sur un CentOS7 avec succès) nommé dns, ayant pour adresse IP 10.148.14.36 et pour domaine starmate.fr.

Installation:

yum -y install bind bind-utils

On modifie la configuration DNS du système pour que les requêtes DNS se fassent désormais vers le DNS local, pour cela on modifie le paramètre « nameserver » du fichier resolv.conf:

vi /etc/resolv.conf

search starmate.fr
nameserver 127.0.0.1
nameserver 10.148.14.36

On va maintenant configurer la zone.
La mise en place d’une zone, aussi appelé nom de domaine, se fait par la création d’un fichier dans /var/named/.
Ce fichier contiendra l’ensemble des enregistrements DNS du domaine. Ce sont ces informations qui seront envoyées lors d’une requête DNS. Ils donnent notamment les adresses IP de plusieurs services, les IP des sous-domaines, machines, le TTL, etc…

Pour une zone starmate.fr :

vi /var/named/starmate.fr.db

Et on mets ça dedans:

$TTL 604800
@ IN SOA dns.starmate.fr. root.starmate.fr. (
2 ; Serial
3600 ; Refresh [1h]
600 ; Retry [10m]
86400 ; Expire [1j]
600 ) ; Negative Cache TTL [1h]
;
@ IN NS dns.starmate.fr.
dns.starmate.fr. IN A 10.148.14.36

On créer la configuration de la zone inversé:

vi /var/named/10.148.14.zone.db

Et on y met ca:

$TTL 604800
@ IN SOA dns.starmate.fr. root.starmate.fr. (
2 ; Serial
3600 ; Refresh [1h]
600 ; Retry [10m]
86400 ; Expire [1j]
600 ) ; Negative Cache TTL [1h]
;
@               IN      NS      dns.starmate.fr.
36              IN      PTR     dns.starmate.fr.

il faut maintenant inclure cette zone dans la liste des domaines de bind

On va commencer par sauvegarder le fichier de configuration initial:

cp -p /etc/named.conf /etc/named.conf.sav

On va vider le fichier:

> /etc/named.conf

Maintenant le fichier est sauvegardé et vidé de son contenu, on y ajoute ça:

vi /etc/named.conf

options
{
directory "/var/named"; // "Working" directory
dump-file "data/cache_dump.db";
statistics-file "data/named_stats.txt";
memstatistics-file "data/named_mem_stats.txt";

listen-on port 53 { any; };
//listen-on port 53 { 127.0.0.1; };

listen-on-v6 port 53 { any; };
//listen-on-v6 port 53 { ::1; };

allow-query { any; };
allow-query-cache { any; };

recursion yes;

};

logging
{
channel default_debug {
file "data/named.run";
severity dynamic;
};
};

view "internal"
{
match-clients { localnets; };
recursion yes;

zone "." IN {
type hint;
file "/var/named/named.ca";
};

include "/etc/named.rfc1912.zones";

zone "starmate.fr" {
type master;
file "starmate.fr.db";
};

zone "14.148.10.in-addr.arpa" {
type master;
file "10.148.14.zone.db";
};
};

On vérifie que l’on a pas fait d’erreur de syntaxe:

named-checkzone starmate.fr /var/named/starmate.fr.db
named-checkzone starmate.fr /var/named/10.148.14.zone.db

Si pas d’erreur, on redémarre le service:

service named restart

Pour CentOS6, voici les règles iptables pour ouvrir le port DNS qu’il faut ajouter dans /etc/sysconfig/iptables :

vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT

Ou via la commande iptables directement:

iptables -t filter -A OUTPUT -p tcp –dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp –dport 53 -j ACCEPT
iptables -t filter -A INPUT -p tcp –dport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp –dport 53 -j ACCEPT

Pour CentOS7, le mieux est de passer par la commande firewall-cmd:

firewall-cmd --permanent --add-port=53/tcp
firewall-cmd --permanent --add-port=53/udp
firewall-cmd --reload

Vérification de la résolution depuis un autre poste:

dig @10.148.14.36 dns.starmate.fr +short

10.148.14.36

Dig nous a bien retourné l’adresse IP correspondante au nom dns, « dns.starmate.fr »

Vérification de la résolution inversée depuis un autre poste:

dig @10.148.14.36 -x 10.148.14.36 +short

dns.starmate.fr.

Dig nous a bien retourné le nom DNS de la machine ayant l’adresse IP, « 10.148.14.36 »

24 octobre 2016 /

Rien n’empêche une machine de disposer de plusieurs adresses IP, sur des interfaces différentes ou sur une même interface et ceci présente de nombreux avantages dans plusieurs circonstances, par exemple :

  • Pour un serveur web (une IP par site).
  • Pour un serveur quelconque, disposer d’une adresse l’IP dédié à l’administration, et d’une ou plusieurs pour les services.
  • Pour un cluster (une IP par service ou groupe de services).
  • Pour un répartiteur de charge (une IP pour chaque serveur virtuel).

Alias sur Debian

Un alias se configure dans le fichier /etc/network/interfaces.
Pour configurer un alias eth0:0, les lignes suivantes doivent y être ajoutées (et adaptées selon les besoins et votre configuration actuelle):

auto eth0:0
iface eth0:0 inet static
address 192.168.1.70
netmask 255.255.255.0
broadcast 192.168.1.255
network 192.168.1.0

L’alias peut être activé et désactivé comme toute carte avec les commandes ifup et ifdown:

ifup eth0:0
ifdown eth0:0

Alias sur Red Hat

Un alias se configure en créant un fichier dans /etc/sysconfig/network-scripts/ , par exemple ifcfg-eth0:0.
Dans l’exemple de ifcfg-eth0:0, il doit reprendre une structure identique à la configuration de l’interface réseau eth0, excepté l’adresse MAC qui est inutile.
Voici un exemple de contenu :

DEVICE=eth0:0
IPADDR=192.168.1.70
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes

L’alias peut être activé et désactivé comme toute carte avec les commandes ifup et ifdown.

Sur les distributions type RedHat, on peut également créer des plages d’IP multiples en affectant cette plage à une interface réseau.
Il devient alors possible, d’un seul coup, de créer autant d’alias que souhaité, à condition que les adresses IP se suivent.

Si on souhaite créer 19 alias sur eth0 allant de l’IP 192.168.1.71 à 192.168.1.90, le fichier /etc/sysconfig/network-scripts/ifcfg-eth0-range0 doit être créé et rempli avec le contenu suivant :

IPADDR_START=192.168.1.71
IPADDR_END=192.168.1.90
CLONENUM_START=0
NETMASK=255.255.255.0

Le paramètre CLONENUM_START indique le numéro d’alias de départ.

L’interface associée doit être arrêtée et démarrée pour que la modification soit prise en compte, soit par ifdown/ifup, soit par le redémarrage du service network.

Le résultat est le suivant :

ifconfig

eth0:0 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.71 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:1 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.72 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:2 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.73 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:3 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.74 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:4 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.75 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth0:5 Link encap:Ethernet HWaddr 00:0C:29:4C:A6:AF
inet adr:192.168.1.76 Bcast:192.168.1.255
Masque:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

Etc… jusqu’a eth0:18.