diff --git a/ansibletest.py b/ansibletest.py deleted file mode 100644 index 538b9cdef9b5948213980260c396dc2b3b5aeb0a..0000000000000000000000000000000000000000 --- a/ansibletest.py +++ /dev/null @@ -1,22 +0,0 @@ -from ansible import context -from ansible.cli import CLI -from ansible.module_utils.common.collections import ImmutableDict -from ansible.executor.playbook_executor import PlaybookExecutor -from ansible.parsing.dataloader import DataLoader -from ansible.inventory.manager import InventoryManager -from ansible.vars.manager import VariableManager - -loader = DataLoader() - -context.CLIARGS = ImmutableDict(tags={}, listtags=False, listtasks=False, listhosts=False, syntax=False, connection='ssh', - module_path=None, forks=100, remote_user='admin', private_key_file=None, - ssh_common_args=None, ssh_extra_args=None, sftp_extra_args=None, scp_extra_args=None, become=True, - verbosity=True, check=False, start_at_task=None) - -inventory = InventoryManager(loader=loader, sources=('inventory/hosts.yaml',)) - -variable_manager = VariableManager(loader=loader, inventory=inventory, version_info=CLI.version_info(gitinfo=False)) - -pbex = PlaybookExecutor(playbooks=['playbooks/asd.yaml'], inventory=inventory, variable_manager=variable_manager, loader=loader, passwords={}) - -results = pbex.run() \ No newline at end of file diff --git a/maskrecover.py b/maskrecover.py deleted file mode 100755 index 8860fbfec010d8afa6d90ce999c3c41c73b659b7..0000000000000000000000000000000000000000 --- a/maskrecover.py +++ /dev/null @@ -1,26 +0,0 @@ -def read_file(): - router1_ip_path = "router1/router1_ip.txt" - router1_mask_path = "router1/router1_mask.txt" - router2_ip_path = "router2/router2_ip.txt" - router2_mask_path = "router2/router2_mask.txt" - - with open(router1_ip_path, "r") as file: - router1_ips = file.readlines() - with open(router1_mask_path, "r") as file: - router1_masks = file.readlines() - with open(router2_ip_path, "r") as file: - router2_ips = file.readlines() - with open(router2_mask_path, "r") as file: - router2_masks = file.readlines() - print(router1_masks[0]) - print(router2_masks[0]) - if router1_masks[0] < router2_masks[0]: - router1_masks[0] = router2_masks[0] - print(router1_masks[0]) - with open(router1_mask_path, "w") as file: - for item in router1_masks: - file.write(str(item) + "\n") - - -if __name__ == "__main__": - read_file() diff --git a/networkxtest.py b/networkxtest.py index d28c864a674b13fa79857d9df6889cbc47c8a52f..dfa1a5cd02989a2eb904ba16e9ad196c60ed3093 100644 --- a/networkxtest.py +++ b/networkxtest.py @@ -22,8 +22,7 @@ G = nx.Graph() routersNumber = 0 searchedNetwork = 0 searchedMask = 0 -sourceNetwork = 0 -sourceMask = 0 +sourcerouter = "" pathlist= [] @@ -33,8 +32,8 @@ def read(): global routersNumber global searchedNetwork global searchedMask - global sourceNetwork - global sourceMask + global searchedRouter + global sourceRouter newitem = Host() @@ -42,9 +41,9 @@ def read(): searchedNetwork = input("Adja meg a keresett halozatot (maszk nelkul): ") searchedMask = input("Adja meg a keresett halozat maszkjat: ") + searchedRouter = input("Adja meg a keresett halozat routerjet: ") - sourceNetwork = input("Adja meg a kiindulo halozatot (maszk nelkul): ") - sourceMask = input("Adja meg a kiindulo halozat maszkjat: ") + sourceRouter = input("Adja meg a kiindulo halozatot (maszk nelkul): ") for x in range(1, routersNumber + 1): @@ -59,7 +58,6 @@ def read(): os.system('echo "$(cat ~/onlab/router' + str(x) + '/router' + str(x) + '_routes.txt | grep "^L " | cut -d\' \' -f9 | cut -d\'/\' -f1)" >> ~/onlab/router' + str(x) + '/router' + str(x) + '_locales.txt') with open('./router' + str(x) + '/router' + str(x) + '_locales.txt', 'r') as file_2: for line in file_2.readlines(): - #print(line) line = line.replace('\n', '') newitem.ips.append(line) @@ -81,7 +79,6 @@ def read(): line = line.replace('\n', '') if line != '': x = line.split('/') - print(x) newitem.sroutes.append(x[0]) newitem.smasks.append(x[1]) @@ -109,7 +106,7 @@ def graphConstruct(): def findpath(): global pathlist - all_paths = list(nx.all_simple_paths(G, source="R2", target="R5")) + all_paths = list(nx.all_simple_paths(G, source=searchedRouter , target= sourceRouter)) for path in all_paths: pathelements = [] for all in path: @@ -125,33 +122,38 @@ def checkroutings(): elozo = getelement(j) for x in hosts: if j == x.name: - if searchedNetwork in x.networks: - if searchedMask != x.masks: - p = open("host.txt", "w") - p.write(x.name) - f = open("repairmask.txt", "w") - f.write(searchedMask) - g = open("repairip.txt", "w") - g.write(searchedNetwork) - for k in x.networks: - for index, h in enumerate(elozo.networks): - if h == k: - h = open("dest.txt", "w") - h.write(elozo.ips[index]) - elif searchedNetwork in x.sroutes: - if searchedMask != x.smasks: - p = open("host.txt", "w") - p.write(x.name) - f = open("repairmask.txt", "w") - f.write(searchedMask) - g = open("repairip.txt", "w") - g.write(searchedNetwork) - for k in x.networks: - for index, h in enumerate(elozo.networks): - if h == k: - h = open("dest.txt", "w") - h.write(elozo.ips[index]) - print(elozo.ips[index]) + for pindex, p in enumerate(x.networks): + if searchedNetwork == p: + print(p) + if searchedMask != x.masks[pindex]: + p = open("host.txt", "w") + p.write(x.name) + f = open("repairmask.txt", "w") + f.write(searchedMask) + g = open("repairip.txt", "w") + g.write(searchedNetwork) + for k in x.networks: + for index, h in enumerate(elozo.networks): + if h == k: + h = open("dest.txt", "w") + h.write(elozo.ips[index]) + #print(elozo.ips[index]) + for pindex, p in enumerate(x.sroutes): + if searchedNetwork == p: + print("das") + if searchedMask != x.smasks[pindex]: + p = open("host.txt", "w") + p.write(x.name) + f = open("repairmask.txt", "w") + f.write(searchedMask) + g = open("repairip.txt", "w") + g.write(searchedNetwork) + for k in x.networks: + for index, h in enumerate(elozo.networks): + if h == k: + h = open("dest.txt", "w") + h.write(elozo.ips[index]) + #print(elozo.ips[index]) elozo = getelement(j) def getelement(element): @@ -160,12 +162,12 @@ def getelement(element): return i def repairtables(): - #itt majd javitja a routingot + #os.system('ansible-playbook playbooks/repair_routing.yaml -i inventory/hosts.yaml') print("routing javitva") def draw(): nx.draw_networkx(G) - plt.show() + #plt.show() def clear(): for x in range(1, routersNumber + 1 ): @@ -176,6 +178,7 @@ def main(): graphConstruct() findpath() checkroutings() + repairtables() draw() clear() diff --git a/router5/router5_routes.txt b/router5/router5_routes.txt index 71ae8768ca6985bd2f212b52d96d0c522cd58499..27d21eceb9d6c3d16ca7a4e3ee95974509619eb9 100644 --- a/router5/router5_routes.txt +++ b/router5/router5_routes.txt @@ -13,4 +13,4 @@ C 192.168.4.0/24 is directly connected, GigabitEthernet0/0/1 L 192.168.4.2/32 is directly connected, GigabitEthernet0/0/1 C 192.168.6.0/24 is directly connected, GigabitEthernet0/0/1 L 192.168.6.1/32 is directly connected, GigabitEthernet0/0/1 -S 192.168.2.0/24 \ No newline at end of file +S 192.168.2.0/23 \ No newline at end of file diff --git a/test2.py b/test2.py deleted file mode 100644 index 77aa5a35251f4a2079b96e994f218b715fd90f60..0000000000000000000000000000000000000000 --- a/test2.py +++ /dev/null @@ -1,3 +0,0 @@ -from ansible_playbook_runner import Runner - -Runner(['inventory/hosts.yaml'], 'playbooks/asd.yaml').run() \ No newline at end of file