Probleemoplossing: Vragen en Antwoorden

Vraag: Hoe kan ik, ook na een reboot, de instellingen behouden?

Antwoord: Of je nu een init, in de stijl van BSD of SysV (Redhat™ bijvoorbeeld) gebruikt, je kunt het altijd opnemen in /etc/rc.d/rc.local. Dit heb ik op mijn SysV init systeem (Redhat™ 3.0.3 en 4.0):

Mijn /etc/rc.d/rc.local: (gewijzigd om de relevante onderdelen te laten zien)

#instellen van de IP-alias interfaces
echo "Instellen van 172.16.3.1, 172.16.3.10, 172.16.3.100 IP Aliassen ..."
/sbin/ifconfig lo 127.0.0.1
/sbin/ifconfig eth0 up
/sbin/ifconfig eth0 172.16.3.1
/sbin/ifconfig eth0:0 172.16.3.10
/sbin/ifconfig eth0:1 172.16.3.100
#instellen van de routes
echo "Instellen van IP-routes ..."
/sbin/route add -net 127.0.0.0
/sbin/route add -net 172.16.3.0 dev eth0
/sbin/route add -host 172.16.3.1 eth0
/sbin/route add -host 172.16.3.10 eth0:0
/sbin/route add -host 172.16.3.100 eth0:1
/sbin/route add default gw 172.16.3.200
# 

Vraag: Hoe stel ik de IP-alias machine zo in dat ik op de diverse aliased IP-adressen e-mail kan ontvangen (op een machine met sendmail)?

Antwoord: Maak (als deze nog niet bestaat) bijvoorbeeld een bestand met de naam /etc/mynames.cw aan. Het bestand hoeft niet persé deze precieze naam te hebben noch in de /etc directory te staan.

Plaats in dat bestand de officiële domeinnamen van de aliased IP-adressen. Als deze aliased IP-adressen geen domeinnaam hebben, dan kun je het IP-adres zelf plaatsen.

Het bestand /etc/mynames.cw zou er ongeveer zo uit kunnen zien:

# /etc/mynames.cw - plaats hier alle aliassen voor je machine; # is commentaar
domain.one.net
domain.two.com
domain.three.org
4.5.6.7 

Voeg in het bestand sendmail.cf het volgende toe, daar waar het een file class macro Fw definieert:


##################
#   local info	 #
##################


# bestand met hostnamen voor wie we mail ontvangen
Fw/etc/mynames.cw

Daarmee zou het moeten lukken. Test de nieuwe instelling uit door sendmail in testmode aan te roepen. Hieronder volgt een voorbeeld:

ganymede$ /usr/lib/sendmail -bt
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter < ruleset> < address>
> 0 me@4.5.6.7
rewrite: ruleset  0   input: me @ 4 . 5 . 6 . 7
rewrite: ruleset 98   input: me @ 4 . 5 . 6 . 7
rewrite: ruleset 98 returns: me @ 4 . 5 . 6 . 7
rewrite: ruleset 97   input: me @ 4 . 5 . 6 . 7
rewrite: ruleset  3   input: me @ 4 . 5 . 6 . 7
rewrite: ruleset 96   input: me < @ 4 . 5 . 6 . 7 >
rewrite: ruleset 96 returns: me < @ 4 . 5 . 6 . 7 . >
rewrite: ruleset  3 returns: me < @ 4 . 5 . 6 . 7 . >
rewrite: ruleset  0   input: me < @ 4 . 5 . 6 . 7 . >
rewrite: ruleset 98   input: me < @ 4 . 5 . 6 . 7 . >
rewrite: ruleset 98 returns: me < @ 4 . 5 . 6 . 7 . >
rewrite: ruleset  0 returns: $# local $: me
rewrite: ruleset 97 returns: $# local $: me
rewrite: ruleset  0 returns: $# local $: me
> 0 me@4.5.6.8
rewrite: ruleset  0   input: me @ 4 . 5 . 6 . 8
rewrite: ruleset 98   input: me @ 4 . 5 . 6 . 8
rewrite: ruleset 98 returns: me @ 4 . 5 . 6 . 8
rewrite: ruleset 97   input: me @ 4 . 5 . 6 . 8
rewrite: ruleset  3   input: me @ 4 . 5 . 6 . 8
rewrite: ruleset 96   input: me < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 96 returns: me < @ 4 . 5 . 6 . 8 >
rewrite: ruleset  3 returns: me < @ 4 . 5 . 6 . 8 >
rewrite: ruleset  0   input: me < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 98   input: me < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 98 returns: me < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 95   input: < > me < @ 4 . 5 . 6 . 8 >
rewrite: ruleset 95 returns: me < @ 4 . 5 . 6 . 8 >
rewrite: ruleset  0 returns: $# smtp $@ 4 . 5 . 6 . 8 $: me < @ 4 . 5
. 6 . 8 >
rewrite: ruleset 97 returns: $# smtp $@ 4 . 5 . 6 . 8 $: me < @ 4 . 5
. 6 . 8 >
rewrite: ruleset  0 returns: $# smtp $@ 4 . 5 . 6 . 8 $: me < @ 4 . 5
. 6 . 8 >
>

Merk op dat toen ik me@4.5.6.7 testte, het de mail op de lokale machine bezorgde, terwijl me@.4.5.6.8 uit handen werd gegeven aan de smtp mailer. Dat is de juiste response.

Alles is nu ingesteld.