Server IP : 85.214.239.14 / Your IP : 3.141.201.176 Web Server : Apache/2.4.62 (Debian) System : Linux h2886529.stratoserver.net 4.9.0 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.18 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : OFF | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /proc/self/root/lib/python3/dist-packages/ansible_collections/cisco/ios/plugins/modules/ |
Upload File : |
#!/usr/bin/python # -*- coding: utf-8 -*- # Copyright 2022 Red Hat # GNU General Public License v3.0+ # (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) from __future__ import absolute_import, division, print_function __metaclass__ = type DOCUMENTATION = """ module: ios_ping short_description: Tests reachability using ping from IOS switch. description: - Tests reachability using ping from switch to a remote destination. - For a general purpose network module, see the L(net_ping,https://docs.ansible.com/ansible/latest/collections/ansible/netcommon/net_ping_module.html) module. - For Windows targets, use the L(win_ping,https://docs.ansible.com/ansible/latest/collections/ansible/windows/win_ping_module.html) module instead. - For targets running Python, use the L(ping,https://docs.ansible.com/ansible/latest/collections/ansible/builtin/ping_module.html) module instead. version_added: 1.0.0 author: - Jacob McGill (@jmcgill298) - Sagar Paul (@KB-perByte) options: count: description: - Number of packets to send. type: int afi: description: - Define echo type ip or ipv6. choices: - ip - ipv6 default: ip type: str dest: description: - The IP Address or hostname (resolvable by switch) of the remote node. required: true type: str df_bit: description: - Set the DF bit. default: false type: bool source: description: - The source IP Address. type: str egress: description: - Force egress interface bypassing routing. type: str ingress: description: - LAN source interface for Ingress. type: str timeout: description: - specify timeout interval. type: int state: description: - Determines if the expected result is success or fail. choices: - absent - present default: present type: str vrf: description: - The VRF to use for forwarding. type: str notes: - Tested against Cisco IOSXE Version 17.3 on CML. - For a general purpose network module, see the L(net_ping,https://docs.ansible.com/ansible/latest/collections/ansible/netcommon/net_ping_module.html) module. - For Windows targets, use the L(win_ping,https://docs.ansible.com/ansible/latest/collections/ansible/windows/win_ping_module.html) module instead. - For targets running Python, use the L(ping,https://docs.ansible.com/ansible/latest/collections/ansible/builtin/ping_module.html) module instead. """ EXAMPLES = """ - name: Test reachability to 198.51.100.251 using default vrf cisco.ios.ios_ping: dest: 198.51.100.251 - name: Test reachability to 198.51.100.252 using prod vrf cisco.ios.ios_ping: dest: 198.51.100.252 vrf: prod afi: ip - name: Test un reachability to 198.51.100.253 using default vrf cisco.ios.ios_ping: dest: 198.51.100.253 state: absent - name: Test reachability to 198.51.100.250 using prod vrf and setting count and source cisco.ios.ios_ping: dest: 198.51.100.250 source: loopback0 vrf: prod count: 20 - name: Test reachability to 198.51.100.249 using df-bit and size cisco.ios.ios_ping: dest: 198.51.100.249 df_bit: true size: 1400 - name: Test reachability to ipv6 address cisco.ios.ios_ping: dest: 2001:db8:ffff:ffff:ffff:ffff:ffff:ffff afi: ipv6 """ RETURN = """ commands: description: Show the command sent. returned: always type: list sample: ["ping vrf prod 198.51.100.251 count 20 source loopback0"] packet_loss: description: Percentage of packets lost. returned: always type: str sample: "0%" packets_rx: description: Packets successfully received. returned: always type: int sample: 20 packets_tx: description: Packets successfully transmitted. returned: always type: int sample: 20 rtt: description: Show RTT stats. returned: always type: dict sample: {"avg": 2, "max": 8, "min": 1} """ from ansible.module_utils.basic import AnsibleModule from ansible_collections.cisco.ios.plugins.module_utils.network.ios.argspec.ping.ping import ( PingArgs, ) from ansible_collections.cisco.ios.plugins.module_utils.network.ios.config.ping.ping import Ping def main(): """ Main entry point for module execution :returns: the result form module invocation """ module = AnsibleModule(argument_spec=PingArgs.argument_spec) result = Ping(module).execute_module() module.exit_json(**result) if __name__ == "__main__": main()