Briefly describe your issue below:
Hello! I recently decided to try out parrotOS for fun. I installed it an an old Lenovo yoga 2 laptop. The issue is that, when I run a simple network scanner program which I created myself (written in Python), the computer seemingly loses access to the internet after it returns all of the devices on my network. It almost looks like a DDoS attack, as in the computer says I am connected and everything is working fine. But. I am unable to connect to any websites! I am also unable to run any terminal commands which rely on access to the internet, such as ping and traceroute. (when using ping google.com I get “Temporary failure in name resolution” error)
Furthermore, doing a service network-manager restart fixes the issue, and the internet connection is back up and running. However, it is quite annoying to have to do this after running every script. On another note, running the same code on my Kali Linux VM causes absolutely no issues. SO I am at a complete loss as to what is happening. This problem has taken me all of today up to this point to figure out.
What version of Parrot are you running? (include version (e.g. 4.6), edition(e.g. Home//KDE/OVA, etc.), and architecture (currently we only support amd64)
I have the latest version of parrotOS (4.6) and I installed it just last night. It is the security edition from the parrot website. Architecture is x86_64
The OS runs way better than the windows 8 this computer had before, and the UI is awesome.
What method did you use to install Parrot? (Debian Standard / Debian GTK / parrot-experimental)
I used a usb flash drive with an ISO (set up with Etcher)
Configured to multiboot with other systems? (yes / no)
No
If there are any similar issues or solutions, link to them below:
Couldn’t find anything that sounded exactly like this issue after hours of searching unfortunately
If there are any error messages or relevant logs, post them below:
ill post the code I am running for the network scanner here… I don’t think its the problem but you never know:
#!/usr/bin/env python
import scapy.all as scapy
import argparse
def get_args():
parser = argparse.ArgumentParser(description="Use to scan for IPs and MACs internally")
parser.add_argument("-t", "--target", dest="targets", help="specify target IP(s)")
options = parser.parse_args()
return options.targets
def scan(ip_adr):
# send an ARP packet to the broadcast MAC address 'ff:ff:ff..'
arp_request = scapy.ARP(pdst=ip_adr)
# set broadcast MAC in the packet. Packet is an Ethernet frame.
broadcast = scapy.Ether(dst="ff:ff:ff:ff:ff:ff")
# combine ARP packet with the Ethernet packet into one
arp_request_broadcast = broadcast/arp_request
# use scapy to send the packet
# .srp allows us to send packets with a custom Ethernet part
# the response is captured in the variables
answered_list = scapy.srp(arp_request_broadcast, timeout=1, verbose=False)[0]
clients_list = []
for element in answered_list:
target_client = {}
target_client["IP"] = element[1].psrc
target_client["MAC"] = element[1].hwsrc
clients_list.append(target_client)
return clients_list
def print_result(results_list):
print("IP\t\t\tMAC address\n-------------------------------")
for client in results_list:
print(client["IP"] +"\t\t" + client["MAC"])
ip_address=get_args()
scan_result = scan(ip_address)
print_result(scan_result)