Tags

bin_sh blocage blosxom bsdfrance cluster dg834 dhcp dns dnsmasq fail-over fail2ban freebsd ftp git install ipv6 jail kernel kimsufi libre linutop makefile netbsd nginx ntp ntp.org openntpd openwrt python rmll rrdcgi sl2009 ssd symon update usb var_empty world xen

Powered by

blOg
maRkdown
awK
shEll

31/01/2010

[ openwrt dnsmasq blocage ]

201001311022 openwrt dnsmasq blocage

Dnsmasq et le blocage de site

Pour faire suite à l'article sur le blocage de site paru dans le GLMF n° 124, je vous propose sa déclinaison OpenWRT.

/etc/config/dhcp:

config dnsmasq
    [ snip config ]
    list address '/ads.google.com/127.0.0.1'
    list address '/google-analytics.com/127.0.0.1'
    list address '/smartadserver.com/127.0.0.1'
    list address '/adsense.com/127.0.0.1'
    list address '/adsense.fr/127.0.0.1'
    list address '/doubleclick.net/127.0.0.1'

L'option address n'étant pas encore reconnue par le script d'init de dnsmasq (/etc/init.d/dnsmasq), on va lui rajouter une fonction et une ligne de commande supplémentaire.

OpenWRT 8.09 (et antérieur)

dhcp_address_add() {
    local cfg="$1"

    config_get address "$cfg" address
    for o in $address; do
            append args "--address=$o"
    done

}

start() {
    [ snip config_foreach ... ]
    config_foreach dhcp_address_add dnsmasq # appel de notre fonction

    /usr/sbin/dnsmasq $args && { 

OpenWRT 8.09.1 (et ultérieur)

append_address() {
    append args "--address=$1"
}

dnsmasq() {
    [ snip append ... ]
    config_list_foreach "$cfg" "server" append_server
    config_list_foreach "$cfg" "interface" append_interface
    config_list_foreach "$cfg" "address" append_address # appel de notre fonction
    append_parm "$cfg" "leasefile" "-l"
    ...

Et un restart plus tard:

dsx@linutop>host www.adsense.com
www.adsense.com has address 127.0.0.1

Lien vers ce billet