1.. _vyos.vyos.vyos_l3_interfaces_module:
2
3
4****************************
5vyos.vyos.vyos_l3_interfaces
6****************************
7
8**L3 interfaces resource module**
9
10
11Version added: 1.0.0
12
13.. contents::
14   :local:
15   :depth: 1
16
17
18Synopsis
19--------
20- This module manages the L3 interface attributes on VyOS network devices.
21
22
23
24
25Parameters
26----------
27
28.. raw:: html
29
30    <table  border=0 cellpadding=0 class="documentation-table">
31        <tr>
32            <th colspan="4">Parameter</th>
33            <th>Choices/<font color="blue">Defaults</font></th>
34            <th width="100%">Comments</th>
35        </tr>
36            <tr>
37                <td colspan="4">
38                    <div class="ansibleOptionAnchor" id="parameter-"></div>
39                    <b>config</b>
40                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
41                    <div style="font-size: small">
42                        <span style="color: purple">list</span>
43                         / <span style="color: purple">elements=dictionary</span>
44                    </div>
45                </td>
46                <td>
47                </td>
48                <td>
49                        <div>The provided L3 interfaces configuration.</div>
50                </td>
51            </tr>
52                                <tr>
53                    <td class="elbow-placeholder"></td>
54                <td colspan="3">
55                    <div class="ansibleOptionAnchor" id="parameter-"></div>
56                    <b>ipv4</b>
57                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
58                    <div style="font-size: small">
59                        <span style="color: purple">list</span>
60                         / <span style="color: purple">elements=dictionary</span>
61                    </div>
62                </td>
63                <td>
64                </td>
65                <td>
66                        <div>List of IPv4 addresses of the interface.</div>
67                </td>
68            </tr>
69                                <tr>
70                    <td class="elbow-placeholder"></td>
71                    <td class="elbow-placeholder"></td>
72                <td colspan="2">
73                    <div class="ansibleOptionAnchor" id="parameter-"></div>
74                    <b>address</b>
75                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
76                    <div style="font-size: small">
77                        <span style="color: purple">string</span>
78                    </div>
79                </td>
80                <td>
81                </td>
82                <td>
83                        <div>IPv4 address of the interface.</div>
84                </td>
85            </tr>
86
87            <tr>
88                    <td class="elbow-placeholder"></td>
89                <td colspan="3">
90                    <div class="ansibleOptionAnchor" id="parameter-"></div>
91                    <b>ipv6</b>
92                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
93                    <div style="font-size: small">
94                        <span style="color: purple">list</span>
95                         / <span style="color: purple">elements=dictionary</span>
96                    </div>
97                </td>
98                <td>
99                </td>
100                <td>
101                        <div>List of IPv6 addresses of the interface.</div>
102                </td>
103            </tr>
104                                <tr>
105                    <td class="elbow-placeholder"></td>
106                    <td class="elbow-placeholder"></td>
107                <td colspan="2">
108                    <div class="ansibleOptionAnchor" id="parameter-"></div>
109                    <b>address</b>
110                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
111                    <div style="font-size: small">
112                        <span style="color: purple">string</span>
113                    </div>
114                </td>
115                <td>
116                </td>
117                <td>
118                        <div>IPv6 address of the interface.</div>
119                </td>
120            </tr>
121
122            <tr>
123                    <td class="elbow-placeholder"></td>
124                <td colspan="3">
125                    <div class="ansibleOptionAnchor" id="parameter-"></div>
126                    <b>name</b>
127                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
128                    <div style="font-size: small">
129                        <span style="color: purple">string</span>
130                         / <span style="color: red">required</span>
131                    </div>
132                </td>
133                <td>
134                </td>
135                <td>
136                        <div>Full name of the interface, e.g. eth0, eth1.</div>
137                </td>
138            </tr>
139            <tr>
140                    <td class="elbow-placeholder"></td>
141                <td colspan="3">
142                    <div class="ansibleOptionAnchor" id="parameter-"></div>
143                    <b>vifs</b>
144                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
145                    <div style="font-size: small">
146                        <span style="color: purple">list</span>
147                         / <span style="color: purple">elements=dictionary</span>
148                    </div>
149                </td>
150                <td>
151                </td>
152                <td>
153                        <div>Virtual sub-interfaces L3 configurations.</div>
154                </td>
155            </tr>
156                                <tr>
157                    <td class="elbow-placeholder"></td>
158                    <td class="elbow-placeholder"></td>
159                <td colspan="2">
160                    <div class="ansibleOptionAnchor" id="parameter-"></div>
161                    <b>ipv4</b>
162                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
163                    <div style="font-size: small">
164                        <span style="color: purple">list</span>
165                         / <span style="color: purple">elements=dictionary</span>
166                    </div>
167                </td>
168                <td>
169                </td>
170                <td>
171                        <div>List of IPv4 addresses of the virtual interface.</div>
172                </td>
173            </tr>
174                                <tr>
175                    <td class="elbow-placeholder"></td>
176                    <td class="elbow-placeholder"></td>
177                    <td class="elbow-placeholder"></td>
178                <td colspan="1">
179                    <div class="ansibleOptionAnchor" id="parameter-"></div>
180                    <b>address</b>
181                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
182                    <div style="font-size: small">
183                        <span style="color: purple">string</span>
184                    </div>
185                </td>
186                <td>
187                </td>
188                <td>
189                        <div>IPv4 address of the virtual interface.</div>
190                </td>
191            </tr>
192
193            <tr>
194                    <td class="elbow-placeholder"></td>
195                    <td class="elbow-placeholder"></td>
196                <td colspan="2">
197                    <div class="ansibleOptionAnchor" id="parameter-"></div>
198                    <b>ipv6</b>
199                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
200                    <div style="font-size: small">
201                        <span style="color: purple">list</span>
202                         / <span style="color: purple">elements=dictionary</span>
203                    </div>
204                </td>
205                <td>
206                </td>
207                <td>
208                        <div>List of IPv6 addresses of the virtual interface.</div>
209                </td>
210            </tr>
211                                <tr>
212                    <td class="elbow-placeholder"></td>
213                    <td class="elbow-placeholder"></td>
214                    <td class="elbow-placeholder"></td>
215                <td colspan="1">
216                    <div class="ansibleOptionAnchor" id="parameter-"></div>
217                    <b>address</b>
218                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
219                    <div style="font-size: small">
220                        <span style="color: purple">string</span>
221                    </div>
222                </td>
223                <td>
224                </td>
225                <td>
226                        <div>IPv6 address of the virtual interface.</div>
227                </td>
228            </tr>
229
230            <tr>
231                    <td class="elbow-placeholder"></td>
232                    <td class="elbow-placeholder"></td>
233                <td colspan="2">
234                    <div class="ansibleOptionAnchor" id="parameter-"></div>
235                    <b>vlan_id</b>
236                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
237                    <div style="font-size: small">
238                        <span style="color: purple">integer</span>
239                    </div>
240                </td>
241                <td>
242                </td>
243                <td>
244                        <div>Identifier for the virtual sub-interface.</div>
245                </td>
246            </tr>
247
248
249            <tr>
250                <td colspan="4">
251                    <div class="ansibleOptionAnchor" id="parameter-"></div>
252                    <b>running_config</b>
253                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
254                    <div style="font-size: small">
255                        <span style="color: purple">string</span>
256                    </div>
257                </td>
258                <td>
259                </td>
260                <td>
261                        <div>This option is used only with state <em>parsed</em>.</div>
262                        <div>The value of this option should be the output received from the VyOS device by executing the command <b>show configuration commands | grep -e eth[2,3]</b>.</div>
263                        <div>The state <em>parsed</em> reads the configuration from <code>running_config</code> option and transforms it into Ansible structured data as per the resource module&#x27;s argspec and the value is then returned in the <em>parsed</em> key within the result.</div>
264                </td>
265            </tr>
266            <tr>
267                <td colspan="4">
268                    <div class="ansibleOptionAnchor" id="parameter-"></div>
269                    <b>state</b>
270                    <a class="ansibleOptionLink" href="#parameter-" title="Permalink to this option"></a>
271                    <div style="font-size: small">
272                        <span style="color: purple">string</span>
273                    </div>
274                </td>
275                <td>
276                        <ul style="margin: 0; padding: 0"><b>Choices:</b>
277                                    <li><div style="color: blue"><b>merged</b>&nbsp;&larr;</div></li>
278                                    <li>replaced</li>
279                                    <li>overridden</li>
280                                    <li>deleted</li>
281                                    <li>parsed</li>
282                                    <li>gathered</li>
283                                    <li>rendered</li>
284                        </ul>
285                </td>
286                <td>
287                        <div>The state of the configuration after module completion.</div>
288                </td>
289            </tr>
290    </table>
291    <br/>
292
293
294Notes
295-----
296
297.. note::
298   - Tested against VyOS 1.1.8 (helium).
299   - This module works with connection ``network_cli``. See `the VyOS OS Platform Options <../network/user_guide/platform_vyos.html>`_.
300
301
302
303Examples
304--------
305
306.. code-block:: yaml
307
308    # Using merged
309    #
310    # Before state:
311    # -------------
312    #
313    # vyos:~$ show configuration commands | grep -e eth[2,3]
314    # set interfaces ethernet eth2 hw-id '08:00:27:c2:98:23'
315    # set interfaces ethernet eth3 hw-id '08:00:27:43:70:8c'
316    # set interfaces ethernet eth3 vif 101
317    # set interfaces ethernet eth3 vif 102
318
319    - name: Merge provided configuration with device configuration
320      vyos.vyos.vyos_l3_interfaces:
321        config:
322        - name: eth2
323          ipv4:
324          - address: 192.0.2.10/28
325          - address: 198.51.100.40/27
326          ipv6:
327          - address: 2001:db8:100::2/32
328          - address: 2001:db8:400::10/32
329
330        - name: eth3
331          ipv4:
332          - address: 203.0.113.65/26
333          vifs:
334          - vlan_id: 101
335            ipv4:
336            - address: 192.0.2.71/28
337            - address: 198.51.100.131/25
338          - vlan_id: 102
339            ipv6:
340            - address: 2001:db8:1000::5/38
341            - address: 2001:db8:1400::3/38
342        state: merged
343
344    # After state:
345    # -------------
346    #
347    # vyos:~$ show configuration commands | grep -e eth[2,3]
348    # set interfaces ethernet eth2 address '192.0.2.10/28'
349    # set interfaces ethernet eth2 address '198.51.100.40/27'
350    # set interfaces ethernet eth2 address '2001:db8:100::2/32'
351    # set interfaces ethernet eth2 address '2001:db8:400::10/32'
352    # set interfaces ethernet eth2 hw-id '08:00:27:c2:98:23'
353    # set interfaces ethernet eth3 address '203.0.113.65/26'
354    # set interfaces ethernet eth3 hw-id '08:00:27:43:70:8c'
355    # set interfaces ethernet eth3 vif 101 address '192.0.2.71/28'
356    # set interfaces ethernet eth3 vif 101 address '198.51.100.131/25'
357    # set interfaces ethernet eth3 vif 102 address '2001:db8:1000::5/38'
358    # set interfaces ethernet eth3 vif 102 address '2001:db8:1400::3/38'
359    # set interfaces ethernet eth3 vif 102 address '2001:db8:4000::2/34'
360
361
362    # Using replaced
363    #
364    # Before state:
365    # -------------
366    #
367    # vyos:~$ show configuration commands | grep eth
368    # set interfaces ethernet eth0 address 'dhcp'
369    # set interfaces ethernet eth0 duplex 'auto'
370    # set interfaces ethernet eth0 hw-id '08:00:27:30:f0:22'
371    # set interfaces ethernet eth0 smp-affinity 'auto'
372    # set interfaces ethernet eth0 speed 'auto'
373    # set interfaces ethernet eth1 hw-id '08:00:27:EA:0F:B9'
374    # set interfaces ethernet eth1 address '192.0.2.14/24'
375    # set interfaces ethernet eth2 address '192.0.2.10/24'
376    # set interfaces ethernet eth2 address '192.0.2.11/24'
377    # set interfaces ethernet eth2 address '2001:db8::10/32'
378    # set interfaces ethernet eth2 address '2001:db8::11/32'
379    # set interfaces ethernet eth2 hw-id '08:00:27:c2:98:23'
380    # set interfaces ethernet eth3 address '198.51.100.10/24'
381    # set interfaces ethernet eth3 hw-id '08:00:27:43:70:8c'
382    # set interfaces ethernet eth3 vif 101 address '198.51.100.130/25'
383    # set interfaces ethernet eth3 vif 101 address '198.51.100.131/25'
384    # set interfaces ethernet eth3 vif 102 address '2001:db8:4000::3/34'
385    # set interfaces ethernet eth3 vif 102 address '2001:db8:4000::2/34'
386    #
387    - name: Replace device configurations of listed interfaces with provided configurations
388      vyos.vyos.vyos_l3_interfaces:
389        config:
390        - name: eth2
391          ipv4:
392          - address: 192.0.2.10/24
393
394        - name: eth3
395          ipv6:
396          - address: 2001:db8::11/32
397        state: replaced
398
399    # After state:
400    # -------------
401    #
402    # vyos:~$ show configuration commands | grep eth
403    # set interfaces ethernet eth0 address 'dhcp'
404    # set interfaces ethernet eth0 duplex 'auto'
405    # set interfaces ethernet eth0 hw-id '08:00:27:30:f0:22'
406    # set interfaces ethernet eth0 smp-affinity 'auto'
407    # set interfaces ethernet eth0 speed 'auto'
408    # set interfaces ethernet eth1 hw-id '08:00:27:EA:0F:B9'
409    # set interfaces ethernet eth1 address '192.0.2.14/24'
410    # set interfaces ethernet eth2 address '192.0.2.10/24'
411    # set interfaces ethernet eth2 hw-id '08:00:27:c2:98:23'
412    # set interfaces ethernet eth3 hw-id '08:00:27:43:70:8c'
413    # set interfaces ethernet eth3 address '2001:db8::11/32'
414    # set interfaces ethernet eth3 vif 101
415    # set interfaces ethernet eth3 vif 102
416
417
418    # Using overridden
419    #
420    # Before state
421    # --------------
422    #
423    # vyos@vyos-appliance:~$ show configuration commands | grep eth
424    # set interfaces ethernet eth0 address 'dhcp'
425    # set interfaces ethernet eth0 duplex 'auto'
426    # set interfaces ethernet eth0 hw-id '08:00:27:30:f0:22'
427    # set interfaces ethernet eth0 smp-affinity 'auto'
428    # set interfaces ethernet eth0 speed 'auto'
429    # set interfaces ethernet eth1 hw-id '08:00:27:EA:0F:B9'
430    # set interfaces ethernet eth1 address '192.0.2.14/24'
431    # set interfaces ethernet eth2 address '192.0.2.10/24'
432    # set interfaces ethernet eth2 address '192.0.2.11/24'
433    # set interfaces ethernet eth2 address '2001:db8::10/32'
434    # set interfaces ethernet eth2 address '2001:db8::11/32'
435    # set interfaces ethernet eth2 hw-id '08:00:27:c2:98:23'
436    # set interfaces ethernet eth3 address '198.51.100.10/24'
437    # set interfaces ethernet eth3 hw-id '08:00:27:43:70:8c'
438    # set interfaces ethernet eth3 vif 101 address '198.51.100.130/25'
439    # set interfaces ethernet eth3 vif 101 address '198.51.100.131/25'
440    # set interfaces ethernet eth3 vif 102 address '2001:db8:4000::3/34'
441    # set interfaces ethernet eth3 vif 102 address '2001:db8:4000::2/34'
442
443    - name: Overrides all device configuration with provided configuration
444      vyos.vyos.vyos_l3_interfaces:
445        config:
446        - name: eth0
447          ipv4:
448          - address: dhcp
449          ipv6:
450          - address: dhcpv6
451        state: overridden
452
453    # After state
454    # ------------
455    #
456    # vyos@vyos-appliance:~$ show configuration commands | grep eth
457    # set interfaces ethernet eth0 address 'dhcp'
458    # set interfaces ethernet eth0 address 'dhcpv6'
459    # set interfaces ethernet eth0 duplex 'auto'
460    # set interfaces ethernet eth0 hw-id '08:00:27:30:f0:22'
461    # set interfaces ethernet eth0 smp-affinity 'auto'
462    # set interfaces ethernet eth0 speed 'auto'
463    # set interfaces ethernet eth1 hw-id '08:00:27:EA:0F:B9'
464    # set interfaces ethernet eth2 hw-id '08:00:27:c2:98:23'
465    # set interfaces ethernet eth3 hw-id '08:00:27:43:70:8c'
466    # set interfaces ethernet eth3 vif 101
467    # set interfaces ethernet eth3 vif 102
468
469
470    # Using deleted
471    #
472    # Before state
473    # -------------
474    # vyos@vyos-appliance:~$ show configuration commands | grep eth
475    # set interfaces ethernet eth0 address 'dhcp'
476    # set interfaces ethernet eth0 duplex 'auto'
477    # set interfaces ethernet eth0 hw-id '08:00:27:30:f0:22'
478    # set interfaces ethernet eth0 smp-affinity 'auto'
479    # set interfaces ethernet eth0 speed 'auto'
480    # set interfaces ethernet eth1 hw-id '08:00:27:EA:0F:B9'
481    # set interfaces ethernet eth1 address '192.0.2.14/24'
482    # set interfaces ethernet eth2 address '192.0.2.10/24'
483    # set interfaces ethernet eth2 address '192.0.2.11/24'
484    # set interfaces ethernet eth2 address '2001:db8::10/32'
485    # set interfaces ethernet eth2 address '2001:db8::11/32'
486    # set interfaces ethernet eth2 hw-id '08:00:27:c2:98:23'
487    # set interfaces ethernet eth3 address '198.51.100.10/24'
488    # set interfaces ethernet eth3 hw-id '08:00:27:43:70:8c'
489    # set interfaces ethernet eth3 vif 101 address '198.51.100.130/25'
490    # set interfaces ethernet eth3 vif 101 address '198.51.100.131/25'
491    # set interfaces ethernet eth3 vif 102 address '2001:db8:4000::3/34'
492    # set interfaces ethernet eth3 vif 102 address '2001:db8:4000::2/34'
493
494    - name: Delete L3 attributes of given interfaces (Note - This won't delete the interface
495        itself)
496      vyos.vyos.vyos_l3_interfaces:
497        config:
498        - name: eth1
499        - name: eth2
500        - name: eth3
501        state: deleted
502
503    # After state
504    # ------------
505    # vyos@vyos-appliance:~$ show configuration commands | grep eth
506    # set interfaces ethernet eth0 address 'dhcp'
507    # set interfaces ethernet eth0 duplex 'auto'
508    # set interfaces ethernet eth0 hw-id '08:00:27:f3:6c:b5'
509    # set interfaces ethernet eth0 smp_affinity 'auto'
510    # set interfaces ethernet eth0 speed 'auto'
511    # set interfaces ethernet eth1 hw-id '08:00:27:ad:ef:65'
512    # set interfaces ethernet eth1 smp_affinity 'auto'
513    # set interfaces ethernet eth2 hw-id '08:00:27:ab:4e:79'
514    # set interfaces ethernet eth2 smp_affinity 'auto'
515    # set interfaces ethernet eth3 hw-id '08:00:27:17:3c:85'
516    # set interfaces ethernet eth3 smp_affinity 'auto'
517
518
519    # Using gathered
520    #
521    # Before state:
522    # -------------
523    #
524    # vyos:~$ show configuration commands | grep -e eth[2,3,0]
525    # set interfaces ethernet eth0 address 'dhcp'
526    # set interfaces ethernet eth0 duplex 'auto'
527    # set interfaces ethernet eth0 hw-id '08:00:27:50:5e:19'
528    # set interfaces ethernet eth0 smp_affinity 'auto'
529    # set interfaces ethernet eth0 speed 'auto'
530    # set interfaces ethernet eth1 address '192.0.2.14/24'
531    # set interfaces ethernet eth2 address '192.0.2.11/24'
532    # set interfaces ethernet eth2 address '192.0.2.10/24'
533    # set interfaces ethernet eth2 address '2001:db8::10/32'
534    # set interfaces ethernet eth2 address '2001:db8::12/32'
535    #
536    - name: Gather listed l3 interfaces with provided configurations
537      vyos.vyos.vyos_l3_interfaces:
538        config:
539        state: gathered
540    #
541    #
542    # -------------------------
543    # Module Execution Result
544    # -------------------------
545    #
546    #    "gathered": [
547    #         {
548    #             "ipv4": [
549    #                 {
550    #                     "address": "192.0.2.11/24"
551    #                 },
552    #                 {
553    #                     "address": "192.0.2.10/24"
554    #                 }
555    #             ],
556    #             "ipv6": [
557    #                 {
558    #                     "address": "2001:db8::10/32"
559    #                 },
560    #                 {
561    #                     "address": "2001:db8::12/32"
562    #                 }
563    #             ],
564    #             "name": "eth2"
565    #         },
566    #         {
567    #             "ipv4": [
568    #                 {
569    #                     "address": "192.0.2.14/24"
570    #                 }
571    #             ],
572    #             "name": "eth1"
573    #         },
574    #         {
575    #             "ipv4": [
576    #                 {
577    #                     "address": "dhcp"
578    #                 }
579    #             ],
580    #             "name": "eth0"
581    #         }
582    #     ]
583    #
584    #
585    # After state:
586    # -------------
587    #
588    # vyos:~$ show configuration commands | grep -e eth[2,3]
589    # set interfaces ethernet eth0 address 'dhcp'
590    # set interfaces ethernet eth0 duplex 'auto'
591    # set interfaces ethernet eth0 hw-id '08:00:27:50:5e:19'
592    # set interfaces ethernet eth0 smp_affinity 'auto'
593    # set interfaces ethernet eth0 speed 'auto'
594    # set interfaces ethernet eth1 address '192.0.2.14/24'
595    # set interfaces ethernet eth2 address '192.0.2.11/24'
596    # set interfaces ethernet eth2 address '192.0.2.10/24'
597    # set interfaces ethernet eth2 address '2001:db8::10/32'
598    # set interfaces ethernet eth2 address '2001:db8::12/32'
599
600
601    # Using rendered
602    #
603    #
604    - name: Render the commands for provided  configuration
605      vyos.vyos.vyos_l3_interfaces:
606        config:
607        - name: eth1
608          ipv4:
609          - address: 192.0.2.14/24
610        - name: eth2
611          ipv4:
612          - address: 192.0.2.10/24
613          - address: 192.0.2.11/24
614          ipv6:
615          - address: 2001:db8::10/32
616          - address: 2001:db8::12/32
617        state: rendered
618    #
619    #
620    # -------------------------
621    # Module Execution Result
622    # -------------------------
623    #
624    #
625    # "rendered": [
626    #         "set interfaces ethernet eth1 address '192.0.2.14/24'",
627    #         "set interfaces ethernet eth2 address '192.0.2.11/24'",
628    #         "set interfaces ethernet eth2 address '192.0.2.10/24'",
629    #         "set interfaces ethernet eth2 address '2001:db8::10/32'",
630    #         "set interfaces ethernet eth2 address '2001:db8::12/32'"
631    #     ]
632
633
634    # Using parsed
635    #
636    #
637    - name: parse the provided running configuration
638      vyos.vyos.vyos_l3_interfaces:
639        running_config:
640          "set interfaces ethernet eth0 address 'dhcp'
641           set interfaces ethernet eth1 address '192.0.2.14/24'
642           set interfaces ethernet eth2 address '192.0.2.10/24'
643           set interfaces ethernet eth2 address '192.0.2.11/24'
644           set interfaces ethernet eth2 address '2001:db8::10/32'
645           set interfaces ethernet eth2 address '2001:db8::12/32'"
646        state: parsed
647    #
648    #
649    # -------------------------
650    # Module Execution Result
651    # -------------------------
652    #
653    #
654    # "parsed": [
655    #         {
656    #             "ipv4": [
657    #                 {
658    #                     "address": "192.0.2.10/24"
659    #                 },
660    #                 {
661    #                     "address": "192.0.2.11/24"
662    #                 }
663    #             ],
664    #             "ipv6": [
665    #                 {
666    #                     "address": "2001:db8::10/32"
667    #                 },
668    #                 {
669    #                     "address": "2001:db8::12/32"
670    #                 }
671    #             ],
672    #             "name": "eth2"
673    #         },
674    #         {
675    #             "ipv4": [
676    #                 {
677    #                     "address": "192.0.2.14/24"
678    #                 }
679    #             ],
680    #             "name": "eth1"
681    #         },
682    #         {
683    #             "ipv4": [
684    #                 {
685    #                     "address": "dhcp"
686    #                 }
687    #             ],
688    #             "name": "eth0"
689    #         }
690    #     ]
691
692
693
694Return Values
695-------------
696Common return values are documented `here <https://docs.ansible.com/ansible/latest/reference_appendices/common_return_values.html#common-return-values>`_, the following are the fields unique to this module:
697
698.. raw:: html
699
700    <table border=0 cellpadding=0 class="documentation-table">
701        <tr>
702            <th colspan="1">Key</th>
703            <th>Returned</th>
704            <th width="100%">Description</th>
705        </tr>
706            <tr>
707                <td colspan="1">
708                    <div class="ansibleOptionAnchor" id="return-"></div>
709                    <b>after</b>
710                    <a class="ansibleOptionLink" href="#return-" title="Permalink to this return value"></a>
711                    <div style="font-size: small">
712                      <span style="color: purple">list</span>
713                    </div>
714                </td>
715                <td>when changed</td>
716                <td>
717                            <div>The configuration as structured data after module completion.</div>
718                    <br/>
719                        <div style="font-size: smaller"><b>Sample:</b></div>
720                        <div style="font-size: smaller; color: blue; word-wrap: break-word; word-break: break-all;">The configuration returned will always be in the same format
721     of the parameters above.</div>
722                </td>
723            </tr>
724            <tr>
725                <td colspan="1">
726                    <div class="ansibleOptionAnchor" id="return-"></div>
727                    <b>before</b>
728                    <a class="ansibleOptionLink" href="#return-" title="Permalink to this return value"></a>
729                    <div style="font-size: small">
730                      <span style="color: purple">list</span>
731                    </div>
732                </td>
733                <td>always</td>
734                <td>
735                            <div>The configuration as structured data prior to module invocation.</div>
736                    <br/>
737                        <div style="font-size: smaller"><b>Sample:</b></div>
738                        <div style="font-size: smaller; color: blue; word-wrap: break-word; word-break: break-all;">The configuration returned will always be in the same format
739     of the parameters above.</div>
740                </td>
741            </tr>
742            <tr>
743                <td colspan="1">
744                    <div class="ansibleOptionAnchor" id="return-"></div>
745                    <b>commands</b>
746                    <a class="ansibleOptionLink" href="#return-" title="Permalink to this return value"></a>
747                    <div style="font-size: small">
748                      <span style="color: purple">list</span>
749                    </div>
750                </td>
751                <td>always</td>
752                <td>
753                            <div>The set of commands pushed to the remote device.</div>
754                    <br/>
755                        <div style="font-size: smaller"><b>Sample:</b></div>
756                        <div style="font-size: smaller; color: blue; word-wrap: break-word; word-break: break-all;">[&#x27;set interfaces ethernet eth1 192.0.2.14/2&#x27;, &#x27;set interfaces ethernet eth3 vif 101 address 198.51.100.130/25&#x27;]</div>
757                </td>
758            </tr>
759    </table>
760    <br/><br/>
761
762
763Status
764------
765
766
767Authors
768~~~~~~~
769
770- Nilashish Chakraborty (@NilashishC)
771- Rohit Thakur (@rohitthakur2590)
772