]> git.ipfire.org Git - ipfire-2.x.git/blob - src/patches/dnsmasq/0111-Documenation-updates-for-bridge-interface-and-off-li.patch
Merge branch 'next' of ssh://git.ipfire.org/pub/git/ipfire-2.x into next
[ipfire-2.x.git] / src / patches / dnsmasq / 0111-Documenation-updates-for-bridge-interface-and-off-li.patch
1 From 4918bd550573844441a287a67202a6a3f0f6126a Mon Sep 17 00:00:00 2001
2 From: Neil Jerram <Neil.Jerram@metaswitch.com>
3 Date: Wed, 10 Jun 2015 22:23:20 +0100
4 Subject: [PATCH 111/113] Documenation updates for --bridge-interface and
5 "off-link".
6
7 ---
8 CHANGELOG | 6 ++++++
9 man/dnsmasq.8 | 17 +++++++++++------
10 man/es/dnsmasq.8 | 12 ++++++++----
11 man/fr/dnsmasq.8 | 18 ++++++++++++------
12 src/dhcp.c | 9 +++++----
13 src/dhcp6.c | 2 +-
14 src/radv.c | 6 +++---
15 7 files changed, 46 insertions(+), 24 deletions(-)
16
17 diff --git a/CHANGELOG b/CHANGELOG
18 index a5bd4dc02701..7d8f73ffa61c 100644
19 --- a/CHANGELOG
20 +++ b/CHANGELOG
21 @@ -128,6 +128,12 @@ version 2.73
22
23 Add AddDhcpLease and DeleteDhcpLease DBus methods. Thanks
24 to Nicolas Cavallari for the patch.
25 +
26 + Allow configuration of router advertisements without the
27 + "on-link" bit set. Thanks to Neil Jerram for the patch.
28 +
29 + Extend --bridge-interface to DHCPv6 and router
30 + advertisements. Thanks to Neil Jerram for the patch.
31
32
33 version 2.72
34 diff --git a/man/dnsmasq.8 b/man/dnsmasq.8
35 index f811dc326e9f..ffa0c7b1f436 100644
36 --- a/man/dnsmasq.8
37 +++ b/man/dnsmasq.8
38 @@ -833,7 +833,7 @@ and
39 for details.)
40
41 For IPv6, the mode may be some combination of
42 -.B ra-only, slaac, ra-names, ra-stateless, ra-advrouter.
43 +.B ra-only, slaac, ra-names, ra-stateless, ra-advrouter, off-link.
44
45 .B ra-only
46 tells dnsmasq to offer Router Advertisement only on this subnet,
47 @@ -873,6 +873,9 @@ enables a mode where router address(es) rather than prefix(es) are included in t
48 This is described in RFC-3775 section 7.2 and is used in mobile IPv6. In this mode the interval option
49 is also included, as described in RFC-3775 section 7.3.
50
51 +.B off-link
52 +tells dnsmasq to advertise the prefix without the on-link (aka L) bit set.
53 +
54 .TP
55 .B \-G, --dhcp-host=[<hwaddr>][,id:<client_id>|*][,set:<tag>][,<ipaddr>][,<hostname>][,<lease_time>][,ignore]
56 Specify per host parameters for the DHCP server. This allows a machine
57 @@ -1597,11 +1600,13 @@ option also forces the leasechange script to be called on changes
58 to the client-id and lease length and expiry time.
59 .TP
60 .B --bridge-interface=<interface>,<alias>[,<alias>]
61 -Treat DHCP request packets arriving at any of the <alias> interfaces
62 -as if they had arrived at <interface>. This option is necessary when
63 -using "old style" bridging on BSD platforms, since
64 -packets arrive at tap interfaces which don't have an IP address.
65 -A trailing '*' wildcard can be used in each <alias>.
66 +Treat DHCP (v4 and v6) request and IPv6 Router Solicit packets
67 +arriving at any of the <alias> interfaces as if they had arrived at
68 +<interface>. This option allows dnsmasq to provide DHCP and RA
69 +service over unaddressed and unbridged Ethernet interfaces, e.g. on an
70 +OpenStack compute host where each such interface is a TAP interface to
71 +a VM, or as in "old style bridging" on BSD platforms. A trailing '*'
72 +wildcard can be used in each <alias>.
73 .TP
74 .B \-s, --domain=<domain>[,<address range>[,local]]
75 Specifies DNS domains for the DHCP server. Domains may be be given
76 diff --git a/man/es/dnsmasq.8 b/man/es/dnsmasq.8
77 index 65e4b7277a6b..81c745a48b6e 100644
78 --- a/man/es/dnsmasq.8
79 +++ b/man/es/dnsmasq.8
80 @@ -1062,10 +1062,14 @@ esta opci
81 cuando hay cambios hechos a el client-id y tiempos de arriendo y vencimiento.
82 .TP
83 .B --bridge-interface=<nombre de interface>,<alias>[,<alias>]
84 -Tratar paquetes de pedidos DHCP que llegan a cualquiera de las interfaces <alias>
85 -como si hubieran llegado a la interface <nombre de interface>. Esta opción
86 -es necesaria al usar bridging estilo viejo en plataformas BSD, dado a que
87 -los paquetes llegan a interfaces tap que no tienen una dirección IP.
88 +Tratar paquetes de pedidos DHCP (v4 y v6) y de IPv6 Router Solicit que
89 +llegan a cualquiera de las interfaces <alias> como si hubieran llegado
90 +a la interface <nombre de interface>. Esta opción permite que dnsmasq
91 +puede proporcionar los servicios DHCP y RA a través de interfaces
92 +ethernet sin dirección y sin puente; por ejemplo en un nodo de cálculo
93 +de OpenStack, donde cada una de esas interfaces es una interfaz TAP
94 +para una máquina virtual, o al usar bridging estilo viejo en
95 +plataformas BSD.
96 .TP
97 .B \-s, --domain=<dominio>[,<rango de IPs>]
98 Especifica los dominios DNS para el servidor DHCP. Dominios pueden ser
99 diff --git a/man/fr/dnsmasq.8 b/man/fr/dnsmasq.8
100 index e0d1e9ad92e5..b4cc16dd3786 100644
101 --- a/man/fr/dnsmasq.8
102 +++ b/man/fr/dnsmasq.8
103 @@ -852,7 +852,7 @@ et
104 pour plus de détails).
105
106 Pour IPv6, le mode peut-être une combinaison des valeurs
107 -.B ra-only, slaac, ra-names, ra-stateless.
108 +.B ra-only, slaac, ra-names, ra-stateless, off-link.
109
110 .B ra-only
111 indique à dnsmasq de n'effectuer que des annonces de routeur (Router
112 @@ -888,6 +888,9 @@ peut-être combiné avec
113 et
114 .B slaac.
115
116 +.B off-link
117 +indique à dnsmasq d'annoncer le préfixe sans le bit L (sur lien).
118 +
119 .TP
120 .B \-G, --dhcp-host=[<adresse matérielle>][,id:<identifiant client>|*][,set:<label>][,<adresse IP>][,<nom d'hôte>][,<durée de bail>][,ignore]
121 Spécifie les paramètres DHCP relatifs à un hôte. Cela permet à une machine
122 @@ -1655,11 +1658,14 @@ changement d'état de bail à chaque changement de l'identifiant de client, de
123 longueur de bail ou de date d'expiration.
124 .TP
125 .B --bridge-interface=<interface>,<alias>[,<alias>]
126 -Traiter les requêtes DHCP arrivant sur n'importe laquelle des interfaces <alias>
127 -comme si elles arrivaient de l'interface <interface>. Cette option est
128 -nécessaire lors de l'utilisation de pont ethernet "ancien mode" sur plate-forme
129 -BSD, puisque dans ce cas les paquets arrivent sur des interfaces "tap" n'ont
130 -pas d'adresse IP. Chaque <alias> peut finir avec un simple '*' joker.
131 +Traiter les requêtes DHCP (v4 et v6) et IPv6 Router Solicit arrivant
132 +sur n'importe laquelle des interfaces <alias> comme si elles
133 +arrivaient de l'interface <interface>. Cette option permet à dnsmasq
134 +de fournir les service DHCP et RA sur les interfaces ethernet non
135 +adressés et non pontés; par exemple sur un hôte de calcul d'OpenStack
136 +où chaque telle interface est une interface TAP à une machine
137 +virtuelle, ou lors de l'utilisation de pont ethernet "ancien mode" sur
138 +plate-forme BSD. Chaque <alias> peut finir avec un simple '*' joker.
139 .TP
140 .B \-s, --domain=<domaine>[,<gamme d'adresses>[,local]]
141 Spécifie le domaine du serveur DHCP. Le domaine peut être donné de manière
142 diff --git a/src/dhcp.c b/src/dhcp.c
143 index eb1ea810b573..e6fceb13a3e1 100644
144 --- a/src/dhcp.c
145 +++ b/src/dhcp.c
146 @@ -225,10 +225,11 @@ void dhcp_packet(time_t now, int pxe_fd)
147 strncpy(arp_req.arp_dev, ifr.ifr_name, 16);
148 #endif
149
150 - /* One form of bridging on BSD has the property that packets
151 - can be recieved on bridge interfaces which do not have an IP address.
152 - We allow these to be treated as aliases of another interface which does have
153 - an IP address with --dhcp-bridge=interface,alias,alias */
154 + /* If the interface on which the DHCP request was received is an
155 + alias of some other interface (as specified by the
156 + --bridge-interface option), change ifr.ifr_name so that we look
157 + for DHCP contexts associated with the aliased interface instead
158 + of with the aliasing one. */
159 for (bridge = daemon->bridges; bridge; bridge = bridge->next)
160 {
161 for (alias = bridge->alias; alias; alias = alias->next)
162 diff --git a/src/dhcp6.c b/src/dhcp6.c
163 index 4c60c6e86c0c..8286ff400217 100644
164 --- a/src/dhcp6.c
165 +++ b/src/dhcp6.c
166 @@ -165,7 +165,7 @@ void dhcp6_packet(time_t now)
167
168 /* If the interface on which the DHCPv6 request was received is
169 an alias of some other interface (as specified by the
170 - --bridge-interfaces option), change parm.ind so that we look
171 + --bridge-interface option), change parm.ind so that we look
172 for DHCPv6 contexts associated with the aliased interface
173 instead of with the aliasing one. */
174 for (bridge = daemon->bridges; bridge; bridge = bridge->next)
175 diff --git a/src/radv.c b/src/radv.c
176 index 300c31c83c78..39f1e92ae75f 100644
177 --- a/src/radv.c
178 +++ b/src/radv.c
179 @@ -205,8 +205,8 @@ void icmp6_packet(time_t now)
180 my_syslog(MS_DHCP | LOG_INFO, "RTR-SOLICIT(%s) %s", interface, mac);
181
182 /* If the incoming interface is an alias of some other one (as
183 - specified by the --bridge-interfaces option), send an RA
184 - using the context of the aliased interface. */
185 + specified by the --bridge-interface option), send an RA using
186 + the context of the aliased interface. */
187 for (bridge = daemon->bridges; bridge; bridge = bridge->next)
188 {
189 int bridge_index = if_nametoindex(bridge->iface);
190 @@ -827,7 +827,7 @@ time_t periodic_ra(time_t now)
191 }
192
193 /* The source interface can only appear in at most
194 - one --bridge-interfaces. */
195 + one --bridge-interface. */
196 break;
197 }
198 }
199 --
200 2.1.0
201