{{tag>FreeBSD BSD routeur pkg}}
====== Premiers pas sous FreeBSD ======
Pour réaliser un routeur j'ai installé une FreeBSD 7.3, voici les commandes de base que j'ai du chercher :
===== Complétion =====
La complétion s'effectue avec Tab puis Ctrl D pour avoir la liste des complétions et non pas Tab Tab comme sous linux
===== Gestion logicielle =====
==== Lister les logiciels installés ====
La commande utilisée est //pkg_info// qui devrait fournir un résultat similaire à :# pkg_info
db41-4.1.25_4 The Berkeley DB package, revision 4.1
portupgrade-2.4.6_3,2 FreeBSD ports/packages administration and management tool s
ruby-1.8.7.248,1 An object-oriented interpreted scripting language
ruby18-bdb-0.6.5_1 Ruby interface to Sleepycat's Berkeley DB revision 2 or lat
vim-lite-7.2.344 Vi "workalike", with many additional features (Lite package
==== Installation de logiciel ====
L'installation s'effectue a l'aide la commande pkg_add, comme par exemple pour installer VIm :pkg_add -r -v vim-lite
===== Configuration =====
La configuration s'effectue dans le fichier /etc/rc.conf
==== Réseau ====
Les interfaces sont nommées en fonction du driver, avec un numéro partant de 0 pour la permiere interface tilisant ce driver, 1 pour la seconde , ....
Dans le cas de cartes 3com 3c905 mes 2 interfaces sont donc "xl0" et "xl1"
=== Configuration des interfaces et adresses IP ===
* configuration IP : ifconfig_xl0="192.168.0.1/24"
Noter ici le suffixe "xl0" correspondant au nom de l'interface comme dans toute la suite d'ailleurs.
* dans le cas d'ajout de VLANs taggué sur cette interface (VLAN 223 par exemple), ajouter :cloned_interfaces="xl0.223"
ifconfig_xl0_223="192.168.1.1/24"
* dans le cas ou on souhaite mettre plusieurs adresses IP sur une seule interface (ici celle en VLAN 223) : ipv4_addrs_xl0_223="192.168.1.1/24 192.168.2.1/24"
Notez ici le _ et non le . comme dans la declaration de l'interface
=== Configuration des routes ===
* route par defaut : defaultrouter="192.168.1.254"
* ajout de routes statiques : Les routes statiques sont déclarées, nommées et activées en fonction de leur nom, en utilisant les arguments "-net $NETWORK $GATEWAY" :
static_routes="marouteamoi1 marouteamoi2"
route_marouteamoi1="-net 192.168.42.0/24 192.168.1.253"
route_marouteamoi2="-net 192.168.43.0/24 192.168.1.252"
=== Afficher la table de routage ===
$ netstat -r
ou pour ne pas resoudre les IPs : $ netstat -rn
===== Obtention d'informations =====
==== Type de processeur ====
Le cat /proc/cpuinfo ne marche pas pour obtenir des infos sur le proc comme sous linux. Pour cela il faut regarder le dmesg par exemple :dmesg | grep -i CPU
ou les récupérer des informations noyau :sysctl -a | grep -i CPU
qui vous renvoie par exemple hw.model: Intel(R) Pentium(R) 4 CPU 2.80GHz
==== Péripériques systeme ====
Pour afficher les informations sur le matériel PCI, on peut utiliser la commande //pciconf//, comme par exemple :
# pciconf -lv
hostb0@pci0:0:0:0: class=0x060000 card=0x00000000 chip=0x25708086 rev=0x02 hdr=0x00
vendor = 'Intel Corporation'
device = 'DRAM Controller / Host-Hub Interface (82865G/PE/P, 82848P)'
class = bridge
subclass = HOST-PCI
vgapci0@pci0:0:2:0: class=0x030000 card=0x76501462 chip=0x25728086 rev=0x02 hdr=0x00
vendor = 'Intel Corporation'
device = 'Integrated Graphics Device (82865G)'
class = display
subclass = VGA
[....]