def traceroute(host): ''' Performs a traceroute to a 3rd party host CLI Example:: salt '*' network.traceroute archlinux.org ''' ret = [] cmd = 'traceroute {0}'.format(sanitize_host(host)) out = __salt__['cmd.run'](cmd) for line in out: if not ' ' in line: continue if line.startswith('traceroute'): continue comps = line.split() result = { 'count': comps[0], 'hostname': comps[1], 'ip': comps[2], 'ms1': comps[4], 'ms2': comps[6], 'ms3': comps[8], 'ping1': comps[3], 'ping2': comps[5], 'ping3': comps[7]} ret.append(result) return ret
def traceroute(host): """ Performs a traceroute to a 3rd party host CLI Example:: salt '*' network.traceroute archlinux.org """ ret = [] cmd = "traceroute {0}".format(sanitize_host(host)) out = __salt__["cmd.run"](cmd) for line in out: if not " " in line: continue if line.startswith("traceroute"): continue comps = line.split() result = { "count": comps[0], "hostname": comps[1], "ip": comps[2], "ms1": comps[4], "ms2": comps[6], "ms3": comps[8], "ping1": comps[3], "ping2": comps[5], "ping3": comps[7], } ret.append(result) return ret
def traceroute(host): ''' Performs a traceroute to a 3rd party host CLI Example:: salt '*' network.traceroute archlinux.org ''' ret = [] cmd = 'traceroute {0}'.format(sanitize_host(host)) out = __salt__['cmd.run'](cmd) for line in out: if not ' ' in line: continue if line.startswith('traceroute'): continue comps = line.split() result = { 'count': comps[0], 'hostname': comps[1], 'ip': comps[2], 'ms1': comps[4], 'ms2': comps[6], 'ms3': comps[8], 'ping1': comps[3], 'ping2': comps[5], 'ping3': comps[7] } ret.append(result) return ret
def dig(host): ''' Performs a DNS lookup with dig CLI Example:: salt '*' network.dig archlinux.org ''' cmd = 'dig {0}'.format(sanitize_host(host)) return __salt__['cmd.run'](cmd)
def ping(host): ''' Performs a ping to a host CLI Example:: salt '*' network.ping archlinux.org ''' cmd = 'ping -c 4 {0}'.format(sanitize_host(host)) return __salt__['cmd.run'](cmd)
def ping(host): ''' Performs a ping to a host CLI Example:: salt '*' network.ping archlinux.org ''' cmd = 'ping -n 4 {0}'.format(sanitize_host(host)) return __salt__['cmd.run'](cmd)
def dig(host): """ Performs a DNS lookup with dig CLI Example:: salt '*' network.dig archlinux.org """ cmd = "dig {0}".format(sanitize_host(host)) return __salt__["cmd.run"](cmd)
def ping(host): """ Performs a ping to a host CLI Example:: salt '*' network.ping archlinux.org """ cmd = "ping -c 4 {0}".format(sanitize_host(host)) return __salt__["cmd.run"](cmd)
def dig(host): ''' Performs a DNS lookup with dig CLI Example:: salt '*' network.dig archlinux.org ''' cmd = 'dig {0}'.format(sanitize_host(host)) return __salt__['cmd.run'](cmd)
def traceroute(host): ''' Performs a traceroute to a 3rd party host CLI Example:: salt '*' network.traceroute archlinux.org ''' ret = [] cmd = 'tracert {0}'.format(sanitize_host(host)) lines = __salt__['cmd.run'](cmd).splitlines() for line in lines: if not ' ' in line: continue if line.startswith('Trac'): continue if line.startswith('over'): continue comps = line.split() complength = len(comps) # This method still needs to better catch rows of other lengths # For example if some of the ms returns are '*' if complength == 9: result = { 'count': comps[0], 'hostname': comps[7], 'ip': comps[8], 'ms1': comps[1], 'ms2': comps[3], 'ms3': comps[5] } ret.append(result) elif complength == 8: result = { 'count': comps[0], 'hostname': None, 'ip': comps[7], 'ms1': comps[1], 'ms2': comps[3], 'ms3': comps[5] } ret.append(result) else: result = { 'count': comps[0], 'hostname': None, 'ip': None, 'ms1': None, 'ms2': None, 'ms3': None } ret.append(result) return ret
def dig(host): ''' Performs a DNS lookup with dig Note: dig must be installed on the Windows minion CLI Example:: salt '*' network.dig archlinux.org ''' cmd = 'dig {0}'.format(sanitize_host(host)) return __salt__['cmd.run'](cmd)
def dig(host): ''' Performs a DNS lookup with dig Note: dig must be installed on the Windows minion CLI Example:: salt '*' network.dig archlinux.org ''' cmd = 'dig {0}'.format(sanitize_host(host)) return __salt__['cmd.run'](cmd)
def traceroute(host): ''' Performs a traceroute to a 3rd party host CLI Example:: salt '*' network.traceroute archlinux.org ''' ret = [] cmd = 'tracert {0}'.format(sanitize_host(host)) lines = __salt__['cmd.run'](cmd).splitlines() for line in lines: if not ' ' in line: continue if line.startswith('Trac'): continue if line.startswith('over'): continue comps = line.split() complength = len(comps) # This method still needs to better catch rows of other lengths # For example if some of the ms returns are '*' if complength == 9: result = { 'count': comps[0], 'hostname': comps[7], 'ip': comps[8], 'ms1': comps[1], 'ms2': comps[3], 'ms3': comps[5]} ret.append(result) elif complength == 8: result = { 'count': comps[0], 'hostname': None, 'ip': comps[7], 'ms1': comps[1], 'ms2': comps[3], 'ms3': comps[5]} ret.append(result) else: result = { 'count': comps[0], 'hostname': None, 'ip': None, 'ms1': None, 'ms2': None, 'ms3': None} ret.append(result) return ret
def nslookup(host): ''' Query DNS for information about a domain or ip address CLI Example:: salt '*' network.nslookup archlinux.org ''' ret = [] cmd = 'nslookup {0}'.format(sanitize_host(host)) lines = __salt__['cmd.run'](cmd).splitlines() for line in lines: if line.startswith('Non-authoritative'): continue if ":" in line: comps = line.split(":") ret.append({comps[0].strip(): comps[1].strip()}) return ret
def nslookup(host): ''' Query DNS for information about a domain or ip address CLI Example:: salt '*' network.nslookup archlinux.org ''' ret = [] cmd = 'nslookup {0}'.format(sanitize_host(host)) lines = __salt__['cmd.run'](cmd).splitlines() for line in lines: if line.startswith('Non-authoritative'): continue if ":" in line: comps = line.split(":") ret.append({comps[0].strip(): comps[1].strip()}) return ret