<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments for #blogdump</title>
	<atom:link href="http://aandre.evolix.net/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://aandre.evolix.net</link>
	<description>geeky lines</description>
	<lastBuildDate>Sun, 31 Jan 2010 11:16:07 +0100</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Comment on freeradius et rlm_sqlcounter by Ahmed</title>
		<link>http://aandre.evolix.net/2009/04/15/freeradius-et-rlm_sqlcounter/comment-page-1/#comment-18714</link>
		<dc:creator>Ahmed</dc:creator>
		<pubDate>Sun, 31 Jan 2010 11:16:07 +0000</pubDate>
		<guid isPermaLink="false">http://aandre.evolix.net/?p=260#comment-18714</guid>
		<description>Bonjour, j&#039;ai ajouté ce module mais tjrs il n&#039;est pas pris en considération.

Voici mon fichier de config :

prefix = /usr
exec_prefix = ${prefix}
sysconfdir = /etc
localstatedir = /var
sbindir = ${exec_prefix}/sbin
logdir = ${localstatedir}/log/freeradius
raddbdir = ${sysconfdir}/freeradius
radacctdir = ${logdir}/radacct
confdir = ${raddbdir}
run_dir = ${localstatedir}/run/freeradius
log_file = ${logdir}/radius.log
log_destination = files
libdir = ${exec_prefix}/lib/freeradius
pidfile = ${run_dir}/freeradius.pid
max_request_time = 30
delete_blocked_requests = no
cleanup_delay = 5
max_requests = 1024
listen {
    ipaddr = *
    port = 0
    type = auth
}
listen {
    ipaddr = *
    port = 0
    type = acct
}
hostname_lookups = no
allow_core_dumps = no
regular_expressions    = yes
extended_expressions    = yes
log {
    syslog_facility = daemon
}
log_stripped_names = no
log_auth = no
log_auth_badpass = no
log_auth_goodpass = no
checkrad = ${sbindir}/checkrad
security {
    max_attributes = 200
    reject_delay = 1
    status_server = no
}
proxy_requests  = no
$INCLUDE  ${confdir}/clients.conf
snmp    = no
thread pool {
    start_servers = 5
    max_servers = 32
    min_spare_servers = 3
    max_spare_servers = 10
    max_requests_per_server = 0
}
modules {
    pap {
        auto_header = no
    }
    chap {
        authtype = CHAP
    }
    pam {
        pam_auth = radiusd
    }
    unix {
        radwtmp = ${logdir}/radwtmp
    }
$INCLUDE ${confdir}/eap.conf
    mschap {
    }
    ldap ldap {
        server = &quot;ldap-neel.grenoble.cnrs.fr&quot;
                identity = &quot;cn=radius,dc=grenoble,dc=cnrs,dc=fr&quot;
        password = admin-pwd
        basedn = &quot;dc=grenoble,dc=cnrs,dc=fr&quot;
                filter = &quot;(&#124;(&#124;(uid=%{Stripped-User-Name:-%{User-Name}})(mail=%{Stripped-User-Name:-%{User-Name}}))(mail=%{Stripped-User-Name:-%{User-Name}}@grenoble.cnrs.fr))&quot;
        base_filter = &quot;(objectclass=radiusprofile)&quot;
        ldap_connections_number = 5
        timeout = 4
        timelimit = 3
        net_timeout = 1
        tls {
            start_tls = no
        }
        dictionary_mapping = ${raddbdir}/ldap.attrmap
        auto_header = yes
        groupname_attribute = radiusGroupName
                #groupmembership_filter = &quot;(&#124;(&amp;(uid=%{Stripped-User-Name:-%{User-Name}}))(&amp;(aliasMail=%{Stripped-User-Name:-%{User-Name}})))(objectclass=radiusProfile)&quot;
                groupmembership_filter = &quot;(&#124;(&#124;(uid=%{Stripped-User-Name:-%{User-Name}})(mail=%{Stripped-User-Name:-%{User-Name}}))(mail=%{Stripped-User-Name:-%{User-Name}}@grenoble.cnrs.fr))&quot;
        groupmembership_attribute = radiusGroupName
    }
    realm IPASS {
        format = prefix
        delimiter = &quot;/&quot;
    }
    realm suffix {
        format = suffix
        delimiter = &quot;@&quot;
    }
    realm realmpercent {
        format = suffix
        delimiter = &quot;%&quot;
    }
    realm ntdomain {
        format = prefix
        delimiter = &quot;\\&quot;
    }   
    checkval {
        item-name = Calling-Station-Id
        check-name = Calling-Station-Id
        data-type = string
    }
    attr_rewrite addtunneltype {
        attribute = Tunnel-Type
                searchin = proxy_reply
                searchfor = &quot;[+ ]&quot;
                replacewith = &quot;VLAN&quot;
                new_attribute = yes
    }
    attr_rewrite  addtunnelmediumtype {
        attribute = Tunnel-Medium-Type
                searchin = proxy_reply
                searchfor = &quot;[+ ]&quot;
                replacewith = &quot;IEEE-802&quot;
                new_attribute = yes   
    }
    attr_rewrite addvlanmcbt {
           attribute = Tunnel-Private-Group-ID
               searchin = proxy_reply
               searchfor = &quot;[+ ]&quot;
               replacewith = &quot;244&quot;
               new_attribute = yes
    }
    preprocess {
        huntgroups = ${confdir}/huntgroups
        hints = ${confdir}/hints
        with_ascend_hack = no
        ascend_channels_per_line = 23
        with_ntdomain_hack = no
        with_specialix_jetstream_hack = no
        with_cisco_vsa_hack = no
    }
    files {
        usersfile = ${confdir}/users
        acctusersfile = ${confdir}/acct_users
        preproxy_usersfile = ${confdir}/preproxy_users
        compat = no
    }
    detail {
        detailfile = ${radacctdir}/%{Client-IP-Address}/detail-%Y%m%d
        detailperm = 0600
        header = &quot;%t&quot;
    }
    acct_unique {
        key = &quot;User-Name, Acct-Session-Id, NAS-IP-Address, Client-IP-Address, NAS-Port&quot;
    }
    $INCLUDE  ${confdir}/sql.conf
    radutmp {
        filename = ${logdir}/radutmp
        username = %{User-Name}
        case_sensitive = yes
        check_with_nas = yes       
        perm = 0600
        callerid = &quot;yes&quot;
    }
    radutmp sradutmp {
        filename = ${logdir}/sradutmp
        perm = 0644
        callerid = &quot;no&quot;
    }
    attr_filter attr_filter.post-proxy {
        attrsfile = ${confdir}/attrs
    }
    attr_filter attr_filter.pre-proxy {
        attrsfile = ${confdir}/attrs.pre-proxy
    }

sqlcounter noresetcounter {
                 counter-name = Max-All-Session-Time
              check-name = &quot;Max-All-Session&quot;
          reply-name = Session-Timeout
             sqlmod-inst = sql
               key = User-Name
                  reset = never
                  query = &quot;SELECT SUM(AcctSessionTime) FROM radacct WHERE UserName=&#039;%{%k}&#039;&quot;
}

sqlcounter hourlycounter {
                counter-name = Hourly-Session-Time
                check-name = Max-Hourly-Session
                reply-name = Session-Timeout
                sqlmod-inst = sql
                key = User-Name
                reset = hourly
                query = &quot;SELECT SUM(AcctSessionTime - \
                 GREATEST((%b - UNIX_TIMESTAMP(AcctStartTime)), 0)) \
                 FROM radacct WHERE UserName=&#039;%{%k}&#039; AND \
                 UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime &gt; &#039;%b&#039;&quot;
}

sqlcounter dailycounter {
                counter-name = Daily-Session-Time
                check-name = Max-Daily-Session
                reply-name = Session-Timeout
                sqlmod-inst = sql
                key = User-Name
                reset = daily
                query = &quot;SELECT SUM(AcctSessionTime - \
                 GREATEST((%b - UNIX_TIMESTAMP(AcctStartTime)), 0)) \
                 FROM radacct WHERE UserName=&#039;%{%k}&#039; AND \
                 UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime &gt; &#039;%b&#039;&quot;
}
     
sqlcounter monthlycounter {
                counter-name = Monthly-Session-Time
                check-name = Max-Monthly-Session
                reply-name = Session-Timeout
                sqlmod-inst = sql
                key = User-Name
                reset = monthly
                query = &quot;SELECT SUM(AcctSessionTime - \
                 GREATEST((%b - UNIX_TIMESTAMP(AcctStartTime)), 0)) \
                 FROM radacct WHERE UserName=&#039;%{%k}&#039; AND \
                 UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime &gt; &#039;%b&#039;&quot;
        }

sqlcounter yearlycounter {
                counter-name = Yearly-Session-Time
                check-name = Max-Yearly-Session
                reply-name = Session-Timeout
                sqlmod-inst = sql
                key = User-Name
                reset = 12m
                query = &quot;SELECT SUM(AcctSessionTime - \
                 GREATEST((%b - UNIX_TIMESTAMP(AcctStartTime)), 0)) \
                 FROM radacct WHERE UserName=&#039;%{%k}&#039; AND \
                 UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime &gt; &#039;%b&#039;&quot;
        }

   



    always fail {
        rcode = fail
    }
    always reject {
        rcode = reject
    }
    always ok {
        rcode = ok
        simulcount = 0
        mpp = no
    }
    expr {
    }
    digest {
    }
    expiration {
        reply-message = &quot;Password Has Expired\r\n&quot;
    }
    logintime {
        reply-message = &quot;You are calling outside your allowed timespan\r\n&quot;
        minimum-timeout = 60
    }
    exec {
        wait = yes
        input_pairs = request
        shell_escape = yes
        output = none
    }
    exec echo {
        wait = yes
        program = &quot;/bin/echo %{User-Name}&quot;
        input_pairs = request
        output_pairs = reply
        shell_escape = yes
    }
    logintime {
    }
}


   

instantiate {
    exec
    expr
    }

authorize {
    preprocess
    sql
    pap   
    chap
    mschap
    unix
    suffix
    eap
    files
Autz-Type LDAP {
        ldap
    }
    expiration   
    logintime
    noresetcounter
        hourlycounter
        dailycounter
        monthlycounter
        yearlycounter
}



authenticate {
        Auth-Type PAP {
          pap
        }
        Auth-Type CHAP {
          chap
        }
        eap
}

preacct {
    preprocess
    acct_unique
    suffix
    files
}
accounting {
    detail
    unix
    radutmp
    sql
}
session {
    radutmp
    sql
}
post-auth {
}
pre-proxy {
    files
}
post-proxy {
    Post-Proxy-Type post.proxy.mcbt {
        addtunneltype
        addtunnelmediumtype
        addvlanmcbt
        }
    eap
}



Est vous pouvez m&#039;aider ??</description>
		<content:encoded><![CDATA[<p>Bonjour, j&#8217;ai ajouté ce module mais tjrs il n&#8217;est pas pris en considération.</p>
<p>Voici mon fichier de config :</p>
<p>prefix = /usr<br />
exec_prefix = ${prefix}<br />
sysconfdir = /etc<br />
localstatedir = /var<br />
sbindir = ${exec_prefix}/sbin<br />
logdir = ${localstatedir}/log/freeradius<br />
raddbdir = ${sysconfdir}/freeradius<br />
radacctdir = ${logdir}/radacct<br />
confdir = ${raddbdir}<br />
run_dir = ${localstatedir}/run/freeradius<br />
log_file = ${logdir}/radius.log<br />
log_destination = files<br />
libdir = ${exec_prefix}/lib/freeradius<br />
pidfile = ${run_dir}/freeradius.pid<br />
max_request_time = 30<br />
delete_blocked_requests = no<br />
cleanup_delay = 5<br />
max_requests = 1024<br />
listen {<br />
    ipaddr = *<br />
    port = 0<br />
    type = auth<br />
}<br />
listen {<br />
    ipaddr = *<br />
    port = 0<br />
    type = acct<br />
}<br />
hostname_lookups = no<br />
allow_core_dumps = no<br />
regular_expressions    = yes<br />
extended_expressions    = yes<br />
log {<br />
    syslog_facility = daemon<br />
}<br />
log_stripped_names = no<br />
log_auth = no<br />
log_auth_badpass = no<br />
log_auth_goodpass = no<br />
checkrad = ${sbindir}/checkrad<br />
security {<br />
    max_attributes = 200<br />
    reject_delay = 1<br />
    status_server = no<br />
}<br />
proxy_requests  = no<br />
$INCLUDE  ${confdir}/clients.conf<br />
snmp    = no<br />
thread pool {<br />
    start_servers = 5<br />
    max_servers = 32<br />
    min_spare_servers = 3<br />
    max_spare_servers = 10<br />
    max_requests_per_server = 0<br />
}<br />
modules {<br />
    pap {<br />
        auto_header = no<br />
    }<br />
    chap {<br />
        authtype = CHAP<br />
    }<br />
    pam {<br />
        pam_auth = radiusd<br />
    }<br />
    unix {<br />
        radwtmp = ${logdir}/radwtmp<br />
    }<br />
$INCLUDE ${confdir}/eap.conf<br />
    mschap {<br />
    }<br />
    ldap ldap {<br />
        server = &#8220;ldap-neel.grenoble.cnrs.fr&#8221;<br />
                identity = &#8220;cn=radius,dc=grenoble,dc=cnrs,dc=fr&#8221;<br />
        password = admin-pwd<br />
        basedn = &#8220;dc=grenoble,dc=cnrs,dc=fr&#8221;<br />
                filter = &#8220;(|(|(uid=%{Stripped-User-Name:-%{User-Name}})(mail=%{Stripped-User-Name:-%{User-Name}}))(mail=%{Stripped-User-Name:-%{User-Name}}@grenoble.cnrs.fr))&#8221;<br />
        base_filter = &#8220;(objectclass=radiusprofile)&#8221;<br />
        ldap_connections_number = 5<br />
        timeout = 4<br />
        timelimit = 3<br />
        net_timeout = 1<br />
        tls {<br />
            start_tls = no<br />
        }<br />
        dictionary_mapping = ${raddbdir}/ldap.attrmap<br />
        auto_header = yes<br />
        groupname_attribute = radiusGroupName<br />
                #groupmembership_filter = &#8220;(|(&amp;(uid=%{Stripped-User-Name:-%{User-Name}}))(&amp;(aliasMail=%{Stripped-User-Name:-%{User-Name}})))(objectclass=radiusProfile)&#8221;<br />
                groupmembership_filter = &#8220;(|(|(uid=%{Stripped-User-Name:-%{User-Name}})(mail=%{Stripped-User-Name:-%{User-Name}}))(mail=%{Stripped-User-Name:-%{User-Name}}@grenoble.cnrs.fr))&#8221;<br />
        groupmembership_attribute = radiusGroupName<br />
    }<br />
    realm IPASS {<br />
        format = prefix<br />
        delimiter = &#8220;/&#8221;<br />
    }<br />
    realm suffix {<br />
        format = suffix<br />
        delimiter = &#8220;@&#8221;<br />
    }<br />
    realm realmpercent {<br />
        format = suffix<br />
        delimiter = &#8220;%&#8221;<br />
    }<br />
    realm ntdomain {<br />
        format = prefix<br />
        delimiter = &#8220;\\&#8221;<br />
    }<br />
    checkval {<br />
        item-name = Calling-Station-Id<br />
        check-name = Calling-Station-Id<br />
        data-type = string<br />
    }<br />
    attr_rewrite addtunneltype {<br />
        attribute = Tunnel-Type<br />
                searchin = proxy_reply<br />
                searchfor = &#8220;[+ ]&#8221;<br />
                replacewith = &#8220;VLAN&#8221;<br />
                new_attribute = yes<br />
    }<br />
    attr_rewrite  addtunnelmediumtype {<br />
        attribute = Tunnel-Medium-Type<br />
                searchin = proxy_reply<br />
                searchfor = &#8220;[+ ]&#8221;<br />
                replacewith = &#8220;IEEE-802&#8243;<br />
                new_attribute = yes<br />
    }<br />
    attr_rewrite addvlanmcbt {<br />
           attribute = Tunnel-Private-Group-ID<br />
               searchin = proxy_reply<br />
               searchfor = &#8220;[+ ]&#8221;<br />
               replacewith = &#8220;244&#8243;<br />
               new_attribute = yes<br />
    }<br />
    preprocess {<br />
        huntgroups = ${confdir}/huntgroups<br />
        hints = ${confdir}/hints<br />
        with_ascend_hack = no<br />
        ascend_channels_per_line = 23<br />
        with_ntdomain_hack = no<br />
        with_specialix_jetstream_hack = no<br />
        with_cisco_vsa_hack = no<br />
    }<br />
    files {<br />
        usersfile = ${confdir}/users<br />
        acctusersfile = ${confdir}/acct_users<br />
        preproxy_usersfile = ${confdir}/preproxy_users<br />
        compat = no<br />
    }<br />
    detail {<br />
        detailfile = ${radacctdir}/%{Client-IP-Address}/detail-%Y%m%d<br />
        detailperm = 0600<br />
        header = &#8220;%t&#8221;<br />
    }<br />
    acct_unique {<br />
        key = &#8220;User-Name, Acct-Session-Id, NAS-IP-Address, Client-IP-Address, NAS-Port&#8221;<br />
    }<br />
    $INCLUDE  ${confdir}/sql.conf<br />
    radutmp {<br />
        filename = ${logdir}/radutmp<br />
        username = %{User-Name}<br />
        case_sensitive = yes<br />
        check_with_nas = yes<br />
        perm = 0600<br />
        callerid = &#8220;yes&#8221;<br />
    }<br />
    radutmp sradutmp {<br />
        filename = ${logdir}/sradutmp<br />
        perm = 0644<br />
        callerid = &#8220;no&#8221;<br />
    }<br />
    attr_filter attr_filter.post-proxy {<br />
        attrsfile = ${confdir}/attrs<br />
    }<br />
    attr_filter attr_filter.pre-proxy {<br />
        attrsfile = ${confdir}/attrs.pre-proxy<br />
    }</p>
<p>sqlcounter noresetcounter {<br />
                 counter-name = Max-All-Session-Time<br />
              check-name = &#8220;Max-All-Session&#8221;<br />
          reply-name = Session-Timeout<br />
             sqlmod-inst = sql<br />
               key = User-Name<br />
                  reset = never<br />
                  query = &#8220;SELECT SUM(AcctSessionTime) FROM radacct WHERE UserName=&#8217;%{%k}&#8217;&#8221;<br />
}</p>
<p>sqlcounter hourlycounter {<br />
                counter-name = Hourly-Session-Time<br />
                check-name = Max-Hourly-Session<br />
                reply-name = Session-Timeout<br />
                sqlmod-inst = sql<br />
                key = User-Name<br />
                reset = hourly<br />
                query = &#8220;SELECT SUM(AcctSessionTime &#8211; \<br />
                 GREATEST((%b &#8211; UNIX_TIMESTAMP(AcctStartTime)), 0)) \<br />
                 FROM radacct WHERE UserName=&#8217;%{%k}&#8217; AND \<br />
                 UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime &gt; &#8216;%b&#8217;&#8221;<br />
}</p>
<p>sqlcounter dailycounter {<br />
                counter-name = Daily-Session-Time<br />
                check-name = Max-Daily-Session<br />
                reply-name = Session-Timeout<br />
                sqlmod-inst = sql<br />
                key = User-Name<br />
                reset = daily<br />
                query = &#8220;SELECT SUM(AcctSessionTime &#8211; \<br />
                 GREATEST((%b &#8211; UNIX_TIMESTAMP(AcctStartTime)), 0)) \<br />
                 FROM radacct WHERE UserName=&#8217;%{%k}&#8217; AND \<br />
                 UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime &gt; &#8216;%b&#8217;&#8221;<br />
}</p>
<p>sqlcounter monthlycounter {<br />
                counter-name = Monthly-Session-Time<br />
                check-name = Max-Monthly-Session<br />
                reply-name = Session-Timeout<br />
                sqlmod-inst = sql<br />
                key = User-Name<br />
                reset = monthly<br />
                query = &#8220;SELECT SUM(AcctSessionTime &#8211; \<br />
                 GREATEST((%b &#8211; UNIX_TIMESTAMP(AcctStartTime)), 0)) \<br />
                 FROM radacct WHERE UserName=&#8217;%{%k}&#8217; AND \<br />
                 UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime &gt; &#8216;%b&#8217;&#8221;<br />
        }</p>
<p>sqlcounter yearlycounter {<br />
                counter-name = Yearly-Session-Time<br />
                check-name = Max-Yearly-Session<br />
                reply-name = Session-Timeout<br />
                sqlmod-inst = sql<br />
                key = User-Name<br />
                reset = 12m<br />
                query = &#8220;SELECT SUM(AcctSessionTime &#8211; \<br />
                 GREATEST((%b &#8211; UNIX_TIMESTAMP(AcctStartTime)), 0)) \<br />
                 FROM radacct WHERE UserName=&#8217;%{%k}&#8217; AND \<br />
                 UNIX_TIMESTAMP(AcctStartTime) + AcctSessionTime &gt; &#8216;%b&#8217;&#8221;<br />
        }</p>
<p>    always fail {<br />
        rcode = fail<br />
    }<br />
    always reject {<br />
        rcode = reject<br />
    }<br />
    always ok {<br />
        rcode = ok<br />
        simulcount = 0<br />
        mpp = no<br />
    }<br />
    expr {<br />
    }<br />
    digest {<br />
    }<br />
    expiration {<br />
        reply-message = &#8220;Password Has Expired\r\n&#8221;<br />
    }<br />
    logintime {<br />
        reply-message = &#8220;You are calling outside your allowed timespan\r\n&#8221;<br />
        minimum-timeout = 60<br />
    }<br />
    exec {<br />
        wait = yes<br />
        input_pairs = request<br />
        shell_escape = yes<br />
        output = none<br />
    }<br />
    exec echo {<br />
        wait = yes<br />
        program = &#8220;/bin/echo %{User-Name}&#8221;<br />
        input_pairs = request<br />
        output_pairs = reply<br />
        shell_escape = yes<br />
    }<br />
    logintime {<br />
    }<br />
}</p>
<p>instantiate {<br />
    exec<br />
    expr<br />
    }</p>
<p>authorize {<br />
    preprocess<br />
    sql<br />
    pap<br />
    chap<br />
    mschap<br />
    unix<br />
    suffix<br />
    eap<br />
    files<br />
Autz-Type LDAP {<br />
        ldap<br />
    }<br />
    expiration<br />
    logintime<br />
    noresetcounter<br />
        hourlycounter<br />
        dailycounter<br />
        monthlycounter<br />
        yearlycounter<br />
}</p>
<p>authenticate {<br />
        Auth-Type PAP {<br />
          pap<br />
        }<br />
        Auth-Type CHAP {<br />
          chap<br />
        }<br />
        eap<br />
}</p>
<p>preacct {<br />
    preprocess<br />
    acct_unique<br />
    suffix<br />
    files<br />
}<br />
accounting {<br />
    detail<br />
    unix<br />
    radutmp<br />
    sql<br />
}<br />
session {<br />
    radutmp<br />
    sql<br />
}<br />
post-auth {<br />
}<br />
pre-proxy {<br />
    files<br />
}<br />
post-proxy {<br />
    Post-Proxy-Type post.proxy.mcbt {<br />
        addtunneltype<br />
        addtunnelmediumtype<br />
        addvlanmcbt<br />
        }<br />
    eap<br />
}</p>
<p>Est vous pouvez m&#8217;aider ??</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Petit memo pour utiliser son téléphone portable en tant que modem sous linux&#8230; by darry el</title>
		<link>http://aandre.evolix.net/2009/03/06/petit-memo-pour-utiliser-son-telephone-portable-en-tant-que-modem-sous-linux/comment-page-1/#comment-18294</link>
		<dc:creator>darry el</dc:creator>
		<pubDate>Wed, 25 Nov 2009 11:45:44 +0000</pubDate>
		<guid isPermaLink="false">http://aandre.evolix.net/?p=109#comment-18294</guid>
		<description>slt je suis tombé sur ta page j&#039;ai trouvé le illimité proposé.je vais l&#039;essayé avec mon tel motorola V3. je te tien informé et merci pour le tuyau.</description>
		<content:encoded><![CDATA[<p>slt je suis tombé sur ta page j&#8217;ai trouvé le illimité proposé.je vais l&#8217;essayé avec mon tel motorola V3. je te tien informé et merci pour le tuyau.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on VRRP et Linux by #blogdump &#187; VRRP et Linux, un peu de bricolage&#8230;</title>
		<link>http://aandre.evolix.net/2009/02/12/vrrp-et-linux/comment-page-1/#comment-15394</link>
		<dc:creator>#blogdump &#187; VRRP et Linux, un peu de bricolage&#8230;</dc:creator>
		<pubDate>Wed, 08 Apr 2009 13:05:40 +0000</pubDate>
		<guid isPermaLink="false">http://aandre.evolix.net/?p=8#comment-15394</guid>
		<description>[...] reprend l&#8217;article précédent en mettant un peu les mains dans le [...]</description>
		<content:encoded><![CDATA[<p>[...] reprend l&#8217;article précédent en mettant un peu les mains dans le [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on VRRP et Linux by FredB</title>
		<link>http://aandre.evolix.net/2009/02/12/vrrp-et-linux/comment-page-1/#comment-15386</link>
		<dc:creator>FredB</dc:creator>
		<pubDate>Sat, 07 Mar 2009 10:14:24 +0000</pubDate>
		<guid isPermaLink="false">http://aandre.evolix.net/?p=8#comment-15386</guid>
		<description>Bonjour et merci pour vos réponses.
Effectivement Vrrpd est tellement souple sous Linux qu&#039;il existe plusieurs façon de l&#039;utiliser. Pour ma part maintenant(j&#039;utilise Vrrpd sur beaucoup de machines différents) je ne me sert en générale plus de la VIP, je préfère mettre une IP bidon du genre 10.1.1.1 et utiliser dans le script de passage en state Master des ip alias, en n&#039;oubliant pas de les démonter dans le script backup, ça me permet d&#039;avoir tout simplement des interfaces manipulables et visible avec ifconfig, par exemple pouvant être tagger dans un vlan, en conservant l&#039;avantage de la bascule de MAC. Pour moi le principale défaut de Vrrp par rapport à d&#039;autres solutions était de ne superviser qu&#039;une interface à la fois ce qui peut provoquer en cas de problème des flux asymétriques sur une machine ayant plusieurs NIC mais c&#039;est une autre histoire ... J&#039;avoue ne pas avoir comparé les solution de failover sous Linux depuis un moment mais Vrrpd m&#039;avait semblé le plus intéressant à l&#039;époque.</description>
		<content:encoded><![CDATA[<p>Bonjour et merci pour vos réponses.<br />
Effectivement Vrrpd est tellement souple sous Linux qu&#8217;il existe plusieurs façon de l&#8217;utiliser. Pour ma part maintenant(j&#8217;utilise Vrrpd sur beaucoup de machines différents) je ne me sert en générale plus de la VIP, je préfère mettre une IP bidon du genre 10.1.1.1 et utiliser dans le script de passage en state Master des ip alias, en n&#8217;oubliant pas de les démonter dans le script backup, ça me permet d&#8217;avoir tout simplement des interfaces manipulables et visible avec ifconfig, par exemple pouvant être tagger dans un vlan, en conservant l&#8217;avantage de la bascule de MAC. Pour moi le principale défaut de Vrrp par rapport à d&#8217;autres solutions était de ne superviser qu&#8217;une interface à la fois ce qui peut provoquer en cas de problème des flux asymétriques sur une machine ayant plusieurs NIC mais c&#8217;est une autre histoire &#8230; J&#8217;avoue ne pas avoir comparé les solution de failover sous Linux depuis un moment mais Vrrpd m&#8217;avait semblé le plus intéressant à l&#8217;époque.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on VRRP et Linux by arno</title>
		<link>http://aandre.evolix.net/2009/02/12/vrrp-et-linux/comment-page-1/#comment-15385</link>
		<dc:creator>arno</dc:creator>
		<pubDate>Fri, 06 Mar 2009 09:29:33 +0000</pubDate>
		<guid isPermaLink="false">http://aandre.evolix.net/?p=8#comment-15385</guid>
		<description>Bonjour FredB,

Merci de votre intérêt pour ce post.

En fait le but de l&#039;article est de montrer comment avoir un comportement de Vrrpd respectant la RFC dans l&#039;utilisation de l&#039;adresse MAC virtuelle (enfin, tel que je l&#039;ai comprise).

Je reprends les deux points que vous avez soulevés: 
 
&lt;blockquote cite=&quot;#commentbody-15384&quot;&gt;
&lt;strong&gt;&lt;a href=&quot;#comment-15384&quot; rel=&quot;nofollow&quot;&gt;FredB&lt;/a&gt; :&lt;/strong&gt;

&lt;p&gt;Article vraiment très intéressant, à mon avis il manque juste un petit éclaircissement, dans quel cas précis peut-on avoir besoin de plusieurs MAC sur la même NIC avec Vrrpd ? En faisant tourner plusieurs instances il est parfaitement possible de faire tourner la VMAC sur une instance, et de la désactiver pour les autres (option -n), dans ce cas toutes les ip virtuelles partagent la même MAC&lt;/p&gt;
&lt;p&gt;Sinon personnellement j’utilise la solution de l’ip aliasing que je trouve plus élégante et très facilement scriptable &lt;/p&gt;
&lt;/blockquote&gt;

Effectivement la solution que vous proposez fonctionne même si l&#039;on n&#039;utilise qu&#039;une adresse MAC commune à toutes les instances, cela rejoint si je ne me trompe pas la solution de l&#039;IP Aliasing pour assurer la redondance. Dans les deux cas, la bascule sera transparente pour les hôtes du réseau qui ont pour gateway l&#039;Ip VRRP.

Ceci dit, la RFC demande normalement qu&#039;il y ait une association entre une ou plusieurs IPs d&#039;une instance VRRP avec une adresse MAC virtuelle. Cette derniere doit contenir le VRID de l&#039;instance VRRP en respectant ce format : 00-00-5E-00-01-{VRID} (rfc2338.7.3).

On peut lire aussi à divers endroit que l&#039;adresse MAC virtuelle doit être utilisée dans les échanges entre des routeurs d&#039;une même instance VRRP (rfc.2338.3.0, 7.2.). Plus globalement, le pragraphe 2.4. &quot;Efficient Operation over Extended LANs&quot; explique pourquoi VRRP utilise une adresse MAC virtuelle propre à une instance.

&lt;blockquote cite=&quot;#commentbody-15384&quot;&gt;
&lt;strong&gt;&lt;a href=&quot;#comment-15384&quot; rel=&quot;nofollow&quot;&gt;FredB&lt;/a&gt; :&lt;/strong&gt;
&lt;p&gt;Je trouve ça au contraire très cohérent puisque Vrrpd remplace la mac de l’interface NIC par la vmac l’ancienne mac ne doit plus être connue sur le réseau, en cas de panne ça permet une bascule transparente.&lt;br /&gt;
Lors de l’interruption de la machine maître le backup récupère la MAC ainsi que les IPs associés et ceci de manière totalement transparent pour les hôtes du réseau.  &lt;/p&gt;
&lt;/blockquote&gt;

À l&#039;inverse, ce point n&#039;est pas explicite dans la RFC mais je pense que le protocole VRRP n&#039;est pas sensé remplacer la MAC de l&#039;interface NIC par la VMAC et occulter l&#039;ancienne, même si Vrrpd se comporte comme cela.
VRRP rajoute une fonctionnalité de redondance mais ne devrait pas modifier la configuration réseau existante des routeurs qu&#039;il regroupe.

On peut le vérifier sur des équipements réseaux propriétaires (je faisais des tests avec un routeur Cisco 800) : La VMAC est uniquement utilisée avec la VIP pour les postes communiquant avec le routeur virtuel de l&#039;instance VRRP. Les routeurs de l&#039;instance VRRP restent toujours accessibles sur leur adresse IP propre, associée avec l&#039;adresse MAC physique de leur carte, qu&#039;ils soient en mode Master ou Backup.

Même si en pratique on peut s&#039;en passer, il me parait plus propre de conserver l&#039;association IP réelle / Mac réelle tout en ayant les associations VIP/VMAC, d&#039;une part pour avoir une VMAC par instance VRRP et respecter la RFC et de l&#039;autre ne pas modifier la topologie du réseau et provoquer trop de changement au niveau Ethernet. L&#039;article tente de montrer comment réaliser cela avec un bridge et ebtables.

J&#039;espère avoir un peu éclairci cet article peut-être un peu fouilli :-)</description>
		<content:encoded><![CDATA[<p>Bonjour FredB,</p>
<p>Merci de votre intérêt pour ce post.</p>
<p>En fait le but de l&#8217;article est de montrer comment avoir un comportement de Vrrpd respectant la RFC dans l&#8217;utilisation de l&#8217;adresse MAC virtuelle (enfin, tel que je l&#8217;ai comprise).</p>
<p>Je reprends les deux points que vous avez soulevés: </p>
<blockquote cite="#commentbody-15384"><p>
<strong><a href="#comment-15384" rel="nofollow">FredB</a> :</strong></p>
<p>Article vraiment très intéressant, à mon avis il manque juste un petit éclaircissement, dans quel cas précis peut-on avoir besoin de plusieurs MAC sur la même NIC avec Vrrpd ? En faisant tourner plusieurs instances il est parfaitement possible de faire tourner la VMAC sur une instance, et de la désactiver pour les autres (option -n), dans ce cas toutes les ip virtuelles partagent la même MAC</p>
<p>Sinon personnellement j’utilise la solution de l’ip aliasing que je trouve plus élégante et très facilement scriptable </p>
</blockquote>
<p>Effectivement la solution que vous proposez fonctionne même si l&#8217;on n&#8217;utilise qu&#8217;une adresse MAC commune à toutes les instances, cela rejoint si je ne me trompe pas la solution de l&#8217;IP Aliasing pour assurer la redondance. Dans les deux cas, la bascule sera transparente pour les hôtes du réseau qui ont pour gateway l&#8217;Ip VRRP.</p>
<p>Ceci dit, la RFC demande normalement qu&#8217;il y ait une association entre une ou plusieurs IPs d&#8217;une instance VRRP avec une adresse MAC virtuelle. Cette derniere doit contenir le VRID de l&#8217;instance VRRP en respectant ce format : 00-00-5E-00-01-{VRID} (rfc2338.7.3).</p>
<p>On peut lire aussi à divers endroit que l&#8217;adresse MAC virtuelle doit être utilisée dans les échanges entre des routeurs d&#8217;une même instance VRRP (rfc.2338.3.0, 7.2.). Plus globalement, le pragraphe 2.4. &#8220;Efficient Operation over Extended LANs&#8221; explique pourquoi VRRP utilise une adresse MAC virtuelle propre à une instance.</p>
<blockquote cite="#commentbody-15384"><p>
<strong><a href="#comment-15384" rel="nofollow">FredB</a> :</strong></p>
<p>Je trouve ça au contraire très cohérent puisque Vrrpd remplace la mac de l’interface NIC par la vmac l’ancienne mac ne doit plus être connue sur le réseau, en cas de panne ça permet une bascule transparente.<br />
Lors de l’interruption de la machine maître le backup récupère la MAC ainsi que les IPs associés et ceci de manière totalement transparent pour les hôtes du réseau.  </p>
</blockquote>
<p>À l&#8217;inverse, ce point n&#8217;est pas explicite dans la RFC mais je pense que le protocole VRRP n&#8217;est pas sensé remplacer la MAC de l&#8217;interface NIC par la VMAC et occulter l&#8217;ancienne, même si Vrrpd se comporte comme cela.<br />
VRRP rajoute une fonctionnalité de redondance mais ne devrait pas modifier la configuration réseau existante des routeurs qu&#8217;il regroupe.</p>
<p>On peut le vérifier sur des équipements réseaux propriétaires (je faisais des tests avec un routeur Cisco 800) : La VMAC est uniquement utilisée avec la VIP pour les postes communiquant avec le routeur virtuel de l&#8217;instance VRRP. Les routeurs de l&#8217;instance VRRP restent toujours accessibles sur leur adresse IP propre, associée avec l&#8217;adresse MAC physique de leur carte, qu&#8217;ils soient en mode Master ou Backup.</p>
<p>Même si en pratique on peut s&#8217;en passer, il me parait plus propre de conserver l&#8217;association IP réelle / Mac réelle tout en ayant les associations VIP/VMAC, d&#8217;une part pour avoir une VMAC par instance VRRP et respecter la RFC et de l&#8217;autre ne pas modifier la topologie du réseau et provoquer trop de changement au niveau Ethernet. L&#8217;article tente de montrer comment réaliser cela avec un bridge et ebtables.</p>
<p>J&#8217;espère avoir un peu éclairci cet article peut-être un peu fouilli <img src='http://aandre.evolix.net/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on VRRP et Linux by FredB</title>
		<link>http://aandre.evolix.net/2009/02/12/vrrp-et-linux/comment-page-1/#comment-15384</link>
		<dc:creator>FredB</dc:creator>
		<pubDate>Tue, 03 Mar 2009 10:20:04 +0000</pubDate>
		<guid isPermaLink="false">http://aandre.evolix.net/?p=8#comment-15384</guid>
		<description>Bonjour,

Article vraiment très intéressant, à mon avis il manque juste un petit éclaircissement, dans quel cas précis peut-on avoir besoin de plusieurs MAC sur la même NIC avec Vrrpd ? En faisant tourner plusieurs instances il est parfaitement possible de faire tourner la VMAC sur une instance, et de la désactiver pour les autres (option -n), dans ce cas toutes les ip virtuelles partagent la même MAC

Sinon personnellement j&#039;utilise la solution de l&#039;ip aliasing que je trouve plus élégante et très facilement scriptable 

Je me permet de vous citer:

« Par contre si l’on essaye d’envoyer des paquets sur l’ancienne IP, soit notre équipement connaît déjà l’adresse MAC et il n’y aura pas de requête ARP, soit il ne la connaît pas, effectue une requête ARP pour l’atteindre et reçoit la  VMAC au lieu de la véritable adresse MAC de l’interface. Bref cela fonctionnera, mais bon, ce n’est pas très cohérent »

Je trouve ça au contraire très cohérent puisque Vrrpd remplace la mac de l&#039;interface NIC par la vmac l&#039;ancienne mac ne doit plus être connue sur le réseau, en cas de panne ça permet une bascule transparente. 
Lors de l&#039;interruption de la machine maître le backup récupère la MAC ainsi que les IPs associés et ceci de manière totalement transparent pour les hôtes du réseau.  

Mais peut-être n’ai-je pas bien compris le sens de votre article dans ce cas désolé pour le commentaire, en tout cas j&#039;attends le suite avec impatience</description>
		<content:encoded><![CDATA[<p>Bonjour,</p>
<p>Article vraiment très intéressant, à mon avis il manque juste un petit éclaircissement, dans quel cas précis peut-on avoir besoin de plusieurs MAC sur la même NIC avec Vrrpd ? En faisant tourner plusieurs instances il est parfaitement possible de faire tourner la VMAC sur une instance, et de la désactiver pour les autres (option -n), dans ce cas toutes les ip virtuelles partagent la même MAC</p>
<p>Sinon personnellement j&#8217;utilise la solution de l&#8217;ip aliasing que je trouve plus élégante et très facilement scriptable </p>
<p>Je me permet de vous citer:</p>
<p>« Par contre si l’on essaye d’envoyer des paquets sur l’ancienne IP, soit notre équipement connaît déjà l’adresse MAC et il n’y aura pas de requête ARP, soit il ne la connaît pas, effectue une requête ARP pour l’atteindre et reçoit la  VMAC au lieu de la véritable adresse MAC de l’interface. Bref cela fonctionnera, mais bon, ce n’est pas très cohérent »</p>
<p>Je trouve ça au contraire très cohérent puisque Vrrpd remplace la mac de l&#8217;interface NIC par la vmac l&#8217;ancienne mac ne doit plus être connue sur le réseau, en cas de panne ça permet une bascule transparente.<br />
Lors de l&#8217;interruption de la machine maître le backup récupère la MAC ainsi que les IPs associés et ceci de manière totalement transparent pour les hôtes du réseau.  </p>
<p>Mais peut-être n’ai-je pas bien compris le sens de votre article dans ce cas désolé pour le commentaire, en tout cas j&#8217;attends le suite avec impatience</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on GPG error pendant une installation de Debian Etch by #blogdump &#187; apt gpg error</title>
		<link>http://aandre.evolix.net/2007/02/11/gpg-error-pendant-une-installation-de-debian-etch/comment-page-1/#comment-15380</link>
		<dc:creator>#blogdump &#187; apt gpg error</dc:creator>
		<pubDate>Wed, 11 Feb 2009 13:29:15 +0000</pubDate>
		<guid isPermaLink="false">http://aandre.evolix.net/?p=4#comment-15380</guid>
		<description>[...] peu dans la continuité de l&#8217;article précédent, vous venez de toucher à votre sources.list et lors de l&#8217;update vous tombez sur un message [...]</description>
		<content:encoded><![CDATA[<p>[...] peu dans la continuité de l&#8217;article précédent, vous venez de toucher à votre sources.list et lors de l&#8217;update vous tombez sur un message [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>
