Feat: Ajout de la description des topologies et des scénarios
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
c45cdd3ec6
commit
e3b9fc1383
@ -1,5 +1,4 @@
|
|||||||
import yaml
|
import yaml
|
||||||
#import cairosvg
|
|
||||||
from weasyprint import HTML, CSS
|
from weasyprint import HTML, CSS
|
||||||
import jinja2
|
import jinja2
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
@ -15,45 +14,77 @@ def graph(roles):
|
|||||||
g.add_edge(str(role["num"]), str(list(lien.keys())[0]))
|
g.add_edge(str(role["num"]), str(list(lien.keys())[0]))
|
||||||
return g
|
return g
|
||||||
|
|
||||||
def build_topo(topo, roles):
|
|
||||||
|
def topo_logo(topo, roles):
|
||||||
plt.figure(figsize=(2, 2))
|
plt.figure(figsize=(2, 2))
|
||||||
ax = plt.gca()
|
ax = plt.gca()
|
||||||
# ax.set_title(f"Forme du réseau: {topo}")
|
# ax.set_title(f"Forme du réseau: {topo}")
|
||||||
g = graph(roles)
|
g = graph(roles)
|
||||||
nx.draw(g,
|
nx.draw(g, node_color="white", node_size=100, ax=ax)
|
||||||
with_labels=True,
|
_ = ax.axis("off")
|
||||||
node_color='white',
|
|
||||||
node_size=100,
|
|
||||||
ax=ax)
|
|
||||||
_ = ax.axis('off')
|
|
||||||
plt.margins(0.2)
|
plt.margins(0.2)
|
||||||
plt.subplots_adjust(left=0, right=1, top=1, bottom=0)
|
plt.subplots_adjust(left=0, right=1, top=1, bottom=0)
|
||||||
plt.savefig(f"{topo}/forme.png",
|
plt.savefig(
|
||||||
|
f"{topo}/logo.png",
|
||||||
transparent=True,
|
transparent=True,
|
||||||
)
|
)
|
||||||
plt.cla()
|
plt.cla()
|
||||||
|
|
||||||
def role_card(role, topo, template, css):
|
plt.figure(figsize=(4, 4))
|
||||||
|
ax = plt.gca()
|
||||||
|
# ax.set_title(f"Forme du réseau: {topo}")
|
||||||
|
g = graph(roles)
|
||||||
|
nx.draw(
|
||||||
|
g,
|
||||||
|
with_labels=True,
|
||||||
|
font_color="#fff",
|
||||||
|
font_size=20,
|
||||||
|
font_weight="bold",
|
||||||
|
node_color="#333",
|
||||||
|
node_size=1000,
|
||||||
|
ax=ax,
|
||||||
|
)
|
||||||
|
_ = ax.axis("off")
|
||||||
|
plt.margins(0.2)
|
||||||
|
plt.subplots_adjust(left=0, right=1, top=1, bottom=0)
|
||||||
|
plt.savefig(
|
||||||
|
f"{topo}/shape.png",
|
||||||
|
transparent=True,
|
||||||
|
)
|
||||||
|
plt.cla()
|
||||||
|
|
||||||
|
|
||||||
|
def topo_card(topo="", description="", scenarios=[], template="", css=[], **kwrds):
|
||||||
|
card = template.render(topo=topo, description=description, scenarios=scenarios)
|
||||||
|
dest = f"{topo}/topo.html"
|
||||||
|
with open(dest, "w") as f:
|
||||||
|
f.write(card)
|
||||||
|
HTML(dest).write_pdf(dest.replace("html", "pdf"), stylesheets=css)
|
||||||
|
|
||||||
|
|
||||||
|
def role_card(role, topo, template, css=[], **kwrds):
|
||||||
card = template.render(topo=topo, **role)
|
card = template.render(topo=topo, **role)
|
||||||
dest = f"{topo}/role{role['num']}.html"
|
dest = f"{topo}/role{role['num']}.html"
|
||||||
with open(dest, "w") as f:
|
with open(dest, "w") as f:
|
||||||
f.write(card)
|
f.write(card)
|
||||||
#cairosvg.svg2pdf(url=dest, write_to=dest.replace("svg", "pdf"))
|
HTML(dest).write_pdf(dest.replace("html", "pdf"), stylesheets=css)
|
||||||
HTML(dest).write_pdf(dest.replace("html", "pdf"), stylesheets=[css])
|
|
||||||
|
|
||||||
|
|
||||||
with open("roles.yml", "r") as f:
|
with open("config.yml", "r") as f:
|
||||||
topos = yaml.load(f, Loader=yaml.SafeLoader)
|
config = yaml.load(f, Loader=yaml.SafeLoader)
|
||||||
with open("role.html", "r") as f:
|
|
||||||
template = jinja2.Template(f.read(), undefined=jinja2.StrictUndefined)
|
|
||||||
css = CSS("role.css")
|
|
||||||
|
|
||||||
for topo, desc in topos.items():
|
css = [CSS(config["css"])]
|
||||||
|
templates = {}
|
||||||
|
for name, template_file in config["templates"].items():
|
||||||
|
with open(template_file, "r") as f:
|
||||||
|
templates[name] = jinja2.Template(f.read(), undefined=jinja2.StrictUndefined)
|
||||||
|
|
||||||
|
|
||||||
|
for topo, desc in config["levels"].items():
|
||||||
|
|
||||||
Path(topo).mkdir(exist_ok=True)
|
Path(topo).mkdir(exist_ok=True)
|
||||||
|
topo_logo(topo, desc["roles"])
|
||||||
build_topo(topo, desc["roles"])
|
topo_card(**desc, topo=topo, template=templates["topo"], css=css)
|
||||||
|
|
||||||
for role in desc["roles"]:
|
for role in desc["roles"]:
|
||||||
role_card(role, topo, template, css)
|
role_card(role=role, topo=topo, template=templates["roles"], css=css)
|
||||||
|
|
||||||
|
328
SNT/03_Internet/Simulation/config.yml
Normal file
328
SNT/03_Internet/Simulation/config.yml
Normal file
@ -0,0 +1,328 @@
|
|||||||
|
---
|
||||||
|
css: role.css
|
||||||
|
|
||||||
|
templates:
|
||||||
|
roles: role.tpl.html
|
||||||
|
topo: topo.tpl.html
|
||||||
|
|
||||||
|
levels:
|
||||||
|
linéaire:
|
||||||
|
description: Les routeurs forment une chaine où chacun connait ses deux voisins.
|
||||||
|
scenarios:
|
||||||
|
- 1: Envoyer des messages.
|
||||||
|
- 2: Sommes nous tous fiables.
|
||||||
|
roles:
|
||||||
|
- num: 1
|
||||||
|
IP: 192.168.0.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 192.168.3.1
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 2: 192.168.1.1
|
||||||
|
- num: 2
|
||||||
|
IP: 192.168.1.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 192.168.3.1
|
||||||
|
particularites:
|
||||||
|
- 2: Ne marche plus après avoir transmis 3 messages
|
||||||
|
liens:
|
||||||
|
- 1: 192.168.0.1
|
||||||
|
- 3: 192.168.2.1
|
||||||
|
- num: 3
|
||||||
|
IP: 192.168.2.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 192.168.0.1
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 2: 192.168.1.1
|
||||||
|
- 4: 192.168.3.1
|
||||||
|
- num: 4
|
||||||
|
IP: 192.168.3.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 192.168.5.1
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 3: 192.168.2.1
|
||||||
|
- 5: 192.168.4.1
|
||||||
|
- num: 5
|
||||||
|
IP: 192.168.4.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 192.168.1.1
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 4: 192.168.3.1
|
||||||
|
- 6: 192.168.5.1
|
||||||
|
- num: 6
|
||||||
|
IP: 192.168.5.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 192.168.2.1
|
||||||
|
particularites:
|
||||||
|
- 2: Ne marche plus après avoir transmis 3 messages
|
||||||
|
liens:
|
||||||
|
- 5: 192.168.4.1
|
||||||
|
|
||||||
|
anneau:
|
||||||
|
description: Les routeurs forment une cercle où chacun connait ses deux voisins.
|
||||||
|
scenarios:
|
||||||
|
- 1: Envoyer des messages et enregistré ce que l'on transmet.
|
||||||
|
- 2: Sommes nous tous fiables?
|
||||||
|
roles:
|
||||||
|
- num: 1
|
||||||
|
IP: 10.10.0.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 10.10.3.1
|
||||||
|
particularites:
|
||||||
|
- Tiens un tableau où les IP des messages transmis sont notés.
|
||||||
|
liens:
|
||||||
|
- 6: 10.10.5.1
|
||||||
|
- 2: 10.10.1.1
|
||||||
|
- num: 2
|
||||||
|
IP: 10.10.1.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 10.10.5.1
|
||||||
|
particularites:
|
||||||
|
- Tiens un tableau où les IP des messages transmis sont notés.
|
||||||
|
liens:
|
||||||
|
- 1: 10.10.0.1
|
||||||
|
- 3: 10.10.2.1
|
||||||
|
- num: 3
|
||||||
|
IP: 10.10.2.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 10.10.4.1
|
||||||
|
particularites:
|
||||||
|
- Tiens un tableau où les IP des messages transmis sont notés.
|
||||||
|
- 2: Ne marche plus après avoir transmis 5 messages
|
||||||
|
liens:
|
||||||
|
- 2: 10.10.1.1
|
||||||
|
- 4: 10.10.3.1
|
||||||
|
- num: 4
|
||||||
|
IP: 10.10.3.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 10.10.0.1
|
||||||
|
particularites:
|
||||||
|
- Tiens un tableau où les IP des messages transmis sont notés.
|
||||||
|
liens:
|
||||||
|
- 3: 10.10.2.1
|
||||||
|
- 5: 10.10.4.1
|
||||||
|
- num: 5
|
||||||
|
IP: 10.10.4.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 10.10.1.1
|
||||||
|
particularites:
|
||||||
|
- Tiens un tableau où les IP des messages transmis sont notés.
|
||||||
|
liens:
|
||||||
|
- 4: 10.10.3.1
|
||||||
|
- 6: 10.10.5.1
|
||||||
|
- num: 6
|
||||||
|
IP: 10.10.5.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 10.10.3.1
|
||||||
|
particularites:
|
||||||
|
- Tiens un tableau où les IP des messages transmis sont notés.
|
||||||
|
liens:
|
||||||
|
- 5: 10.10.4.1
|
||||||
|
- 1: 10.10.0.1
|
||||||
|
|
||||||
|
étoile:
|
||||||
|
description: Les terminaux sont reliés à un seul routeur.
|
||||||
|
scenarios:
|
||||||
|
- 1: Le routeur tente de survivre.
|
||||||
|
- 2: Le routeur espion.
|
||||||
|
roles:
|
||||||
|
- num: 1
|
||||||
|
IP: 77.82.0.1
|
||||||
|
objectifs:
|
||||||
|
particularites:
|
||||||
|
- Après 10 transmissions, ne marche plus.
|
||||||
|
- 2: Ouvrir et noter tous les messages transmis.
|
||||||
|
liens:
|
||||||
|
- 2: 77.82.1.1
|
||||||
|
- 3: 77.82.2.1
|
||||||
|
- 4: 77.82.3.1
|
||||||
|
- 5: 77.82.4.1
|
||||||
|
- 6: 77.82.5.1
|
||||||
|
- num: 2
|
||||||
|
IP: 77.82.1.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 77.82.10.1
|
||||||
|
- Envoyer un message à 77.82.5.1 et demander une réponse
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 1: 77.82.0.1
|
||||||
|
- num: 3
|
||||||
|
IP: 77.82.2.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 77.82.3.1
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 1: 77.82.0.1
|
||||||
|
- num: 4
|
||||||
|
IP: 77.82.3.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 77.82.4.1
|
||||||
|
- Envoyer un message à 77.82.2.1 et demander une réponse
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 1: 77.82.0.1
|
||||||
|
- num: 5
|
||||||
|
IP: 77.82.4.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 77.82.5.1
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 1: 77.82.0.1
|
||||||
|
- num: 6
|
||||||
|
IP: 77.82.5.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer un message à 77.82.1.1
|
||||||
|
- Envoyer un message à 77.82.4.1 et demander une réponse
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 1: 77.82.0.1
|
||||||
|
|
||||||
|
mesh:
|
||||||
|
description: Les terminaux sont reliés à un seul routeur et les routeurs sont connectés à plusieurs routeurs.
|
||||||
|
scenarios:
|
||||||
|
- 1: Les messages doivent trouver leur destinataire. Aurons-nous une réponse?
|
||||||
|
- 2: Sommes nous tous fiables.
|
||||||
|
roles:
|
||||||
|
- num: 1
|
||||||
|
IP: 77.82.1.1
|
||||||
|
objectifs:
|
||||||
|
particularites:
|
||||||
|
- Envoyer message à 131.240.1.1 et demander une réponse.
|
||||||
|
liens:
|
||||||
|
- 2: 77.82.0.1
|
||||||
|
- num: 2
|
||||||
|
IP: 77.82.0.1
|
||||||
|
objectifs:
|
||||||
|
particularites:
|
||||||
|
- 2: À partir du 2e message transmis, ouvre les messages, barre ce qui est écrit et écrit quelque chose d'autre.
|
||||||
|
liens:
|
||||||
|
- 1: 77.82.1.1
|
||||||
|
- 3: 131.240.0.1
|
||||||
|
- 7: 51.12.0.1
|
||||||
|
- num: 3
|
||||||
|
IP: 131.240.0.1
|
||||||
|
objectifs:
|
||||||
|
- Après 5 messages transmis, arrête de transmettre les messages.
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 4: 131.240.1.1
|
||||||
|
- 2: 77.82.0.1
|
||||||
|
- 5: 151.10.0.1
|
||||||
|
- 7: 51.12.0.1
|
||||||
|
- num: 4
|
||||||
|
IP: 131.240.1.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer message à 151.10.1.1 et demander une réponse.
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 3: 131.240.0.1
|
||||||
|
- num: 5
|
||||||
|
IP: 151.10.0.1
|
||||||
|
objectifs:
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 6: 151.10.1.1
|
||||||
|
- 3: 131.240.0.1
|
||||||
|
- 7: 51.12.0.1
|
||||||
|
- num: 6
|
||||||
|
IP: 151.10.1.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer message à 51.12.1.1 et demander une réponse.
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 5: 151.10.0.1
|
||||||
|
- num: 7
|
||||||
|
IP: 51.12.0.1
|
||||||
|
objectifs:
|
||||||
|
particularites:
|
||||||
|
- Après 3 messages transmis, enregistre tous les messages qu'il transmet.
|
||||||
|
liens:
|
||||||
|
- 8: 51.12.1.1
|
||||||
|
- 2: 77.82.0.1
|
||||||
|
- 3: 131.240.0.1
|
||||||
|
- 5: 151.10.0.1
|
||||||
|
- num: 8
|
||||||
|
IP: 51.12.1.1
|
||||||
|
objectifs:
|
||||||
|
- Envoyer message à 77.81.1.1 et demander une réponse.
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 7: 51.12.0.1
|
||||||
|
|
||||||
|
mesh_dns:
|
||||||
|
description: Un réseau mesh pour faire du web.
|
||||||
|
scenarios:
|
||||||
|
- 1: Utilisation du serveur DNS pour accéder aux pages HTML.
|
||||||
|
roles:
|
||||||
|
- num: 1
|
||||||
|
IP: 77.82.1.1
|
||||||
|
objectifs:
|
||||||
|
- Se connecter à 2gt1.stex pour demander la page HTML
|
||||||
|
particularites:
|
||||||
|
- Utilisateur du web.
|
||||||
|
- Connaît le serveur DNS à l'adresse 131.82.0.1
|
||||||
|
liens:
|
||||||
|
- 2: 77.82.0.1
|
||||||
|
- num: 2
|
||||||
|
IP: 77.82.0.1
|
||||||
|
objectifs:
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 1: 77.82.1.1
|
||||||
|
- 3: 131.240.0.1
|
||||||
|
- 7: 51.12.0.1
|
||||||
|
- num: 3
|
||||||
|
IP: 131.240.0.1
|
||||||
|
objectifs:
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 4: 131.240.1.1
|
||||||
|
- 2: 77.82.0.1
|
||||||
|
- 5: 151.10.0.1
|
||||||
|
- 7: 51.12.0.1
|
||||||
|
- num: 4
|
||||||
|
IP: 131.240.1.1
|
||||||
|
objectifs:
|
||||||
|
- Répondre aux requêtes DNS.
|
||||||
|
particularites:
|
||||||
|
- Serveur DNS, connait les noms de domaine suivants
|
||||||
|
- SNT.stex à l'adresse 131..240.1.1
|
||||||
|
- 2gt1.stex à l'adresse 151.10.1.1
|
||||||
|
liens:
|
||||||
|
- 3: 131.240.0.1
|
||||||
|
- num: 5
|
||||||
|
IP: 151.10.0.1
|
||||||
|
objectifs:
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 6: 151.10.1.1
|
||||||
|
- 3: 131.240.0.1
|
||||||
|
- 7: 51.12.0.1
|
||||||
|
- num: 6
|
||||||
|
IP: 151.10.1.1
|
||||||
|
objectifs:
|
||||||
|
- Renvoyer une page HTML quand on nous le demande.
|
||||||
|
particularites:
|
||||||
|
- Serveur Web connu sous le nom de domaine 2gt1.stex
|
||||||
|
liens:
|
||||||
|
- 5: 151.10.0.1
|
||||||
|
- num: 7
|
||||||
|
IP: 51.12.0.1
|
||||||
|
objectifs:
|
||||||
|
particularites:
|
||||||
|
liens:
|
||||||
|
- 8: 51.12.1.1
|
||||||
|
- 2: 77.82.0.1
|
||||||
|
- 3: 131.240.0.1
|
||||||
|
- 5: 151.10.0.1
|
||||||
|
- num: 8
|
||||||
|
IP: 51.12.1.1
|
||||||
|
objectifs:
|
||||||
|
- Renvoyer une page HTML quand on nous le demande.
|
||||||
|
particularites:
|
||||||
|
- Serveur Web connu sous le nom de domaine SNT.stex
|
||||||
|
liens:
|
||||||
|
- 7: 51.12.0.1
|
@ -36,7 +36,7 @@ header > * {
|
|||||||
min-width: 100%;
|
min-width: 100%;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
}
|
}
|
||||||
#ip {
|
#title {
|
||||||
font-size: 2em;
|
font-size: 2em;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
@ -67,4 +67,9 @@ main > * {
|
|||||||
border-width: medium 0 medium 0;
|
border-width: medium 0 medium 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#description > img{
|
||||||
|
display: block;
|
||||||
|
margin: auto;
|
||||||
|
height: 200px;
|
||||||
|
width: 200px;
|
||||||
|
}
|
||||||
|
@ -1,164 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<svg
|
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:svg="http://www.w3.org/2000/svg"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
||||||
width="210mm"
|
|
||||||
height="297mm"
|
|
||||||
viewBox="0 0 210 297"
|
|
||||||
version="1.1"
|
|
||||||
id="svg8"
|
|
||||||
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07, custom)"
|
|
||||||
sodipodi:docname="role.svg">
|
|
||||||
<defs
|
|
||||||
id="defs2">
|
|
||||||
<rect
|
|
||||||
x="141.54318"
|
|
||||||
y="-27.129943"
|
|
||||||
width="121.71338"
|
|
||||||
height="102.64229"
|
|
||||||
id="rect971" />
|
|
||||||
<rect
|
|
||||||
x="0"
|
|
||||||
y="235.85597"
|
|
||||||
width="210"
|
|
||||||
height="61.144028"
|
|
||||||
id="rect40" />
|
|
||||||
<rect
|
|
||||||
x="14.790587"
|
|
||||||
y="147.87104"
|
|
||||||
width="181.01243"
|
|
||||||
height="64.921287"
|
|
||||||
id="rect32" />
|
|
||||||
<rect
|
|
||||||
x="14.093271"
|
|
||||||
y="66.389189"
|
|
||||||
width="195.90673"
|
|
||||||
height="81.350752"
|
|
||||||
id="rect26" />
|
|
||||||
</defs>
|
|
||||||
<sodipodi:namedview
|
|
||||||
id="base"
|
|
||||||
pagecolor="#ffffff"
|
|
||||||
bordercolor="#666666"
|
|
||||||
borderopacity="1.0"
|
|
||||||
inkscape:pageopacity="0.0"
|
|
||||||
inkscape:pageshadow="2"
|
|
||||||
inkscape:zoom="0.45464743"
|
|
||||||
inkscape:cx="73.57707"
|
|
||||||
inkscape:cy="476.54345"
|
|
||||||
inkscape:document-units="mm"
|
|
||||||
inkscape:current-layer="layer1"
|
|
||||||
inkscape:document-rotation="0"
|
|
||||||
showgrid="false"
|
|
||||||
inkscape:snap-bbox="true"
|
|
||||||
inkscape:bbox-nodes="true"
|
|
||||||
inkscape:bbox-paths="true"
|
|
||||||
inkscape:snap-page="true"
|
|
||||||
inkscape:window-width="1366"
|
|
||||||
inkscape:window-height="743"
|
|
||||||
inkscape:window-x="0"
|
|
||||||
inkscape:window-y="25"
|
|
||||||
inkscape:window-maximized="1" />
|
|
||||||
<metadata
|
|
||||||
id="metadata5">
|
|
||||||
<rdf:RDF>
|
|
||||||
<cc:Work
|
|
||||||
rdf:about="">
|
|
||||||
<dc:format>image/svg+xml</dc:format>
|
|
||||||
<dc:type
|
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
|
||||||
<dc:title />
|
|
||||||
</cc:Work>
|
|
||||||
</rdf:RDF>
|
|
||||||
</metadata>
|
|
||||||
<g
|
|
||||||
inkscape:label="Calque 1"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer1">
|
|
||||||
<rect
|
|
||||||
style="fill:#ff8080;stroke:#000000;stroke-width:1"
|
|
||||||
id="rect10"
|
|
||||||
width="210"
|
|
||||||
height="52.691414"
|
|
||||||
x="0"
|
|
||||||
y="0" />
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:12.7px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
|
|
||||||
x="10.563576"
|
|
||||||
y="36.444286"
|
|
||||||
id="text14"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan12"
|
|
||||||
x="10.563576"
|
|
||||||
y="36.444286"
|
|
||||||
style="font-size:12.7px;stroke-width:0.264583">IP = {{IP}}</tspan></text>
|
|
||||||
<path
|
|
||||||
style="fill:#ff2a2a;stroke:#000000;stroke-width:1"
|
|
||||||
id="path18"
|
|
||||||
sodipodi:type="arc"
|
|
||||||
sodipodi:cx="210"
|
|
||||||
sodipodi:cy="0"
|
|
||||||
sodipodi:rx="52.018276"
|
|
||||||
sodipodi:ry="52.018276"
|
|
||||||
sodipodi:start="1.5707963"
|
|
||||||
sodipodi:end="3.1369896"
|
|
||||||
sodipodi:arc-type="slice"
|
|
||||||
d="M 210,52.018276 A 52.018276,52.018276 0 0 1 157.98227,0.23944207 L 210,0 Z" />
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:10.5833px;line-height:1.25;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583"
|
|
||||||
x="176.42413"
|
|
||||||
y="24.483652"
|
|
||||||
id="text22"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan20"
|
|
||||||
x="176.42413"
|
|
||||||
y="24.483652"
|
|
||||||
style="stroke-width:0.264583">#{{num}}</tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
id="text24"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:10.5833px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect26);fill:#000000;fill-opacity:1;stroke:none;"><tspan
|
|
||||||
x="14.09375"
|
|
||||||
y="75.752412"><tspan>Objectifs:
|
|
||||||
</tspan></tspan><tspan
|
|
||||||
x="14.09375"
|
|
||||||
y="88.981538"><tspan>{{objectifs}}</tspan></tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
id="text30"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:10.5833px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect32);fill:#000000;fill-opacity:1;stroke:none;"><tspan
|
|
||||||
x="14.791016"
|
|
||||||
y="157.23483"><tspan>Particularités:
|
|
||||||
</tspan></tspan><tspan
|
|
||||||
x="14.791016"
|
|
||||||
y="170.46396"><tspan>{{particularites}}</tspan></tspan></text>
|
|
||||||
<rect
|
|
||||||
style="fill:#ffccaa;stroke:#000000;stroke-width:1"
|
|
||||||
id="rect36"
|
|
||||||
width="210"
|
|
||||||
height="61.144024"
|
|
||||||
x="0"
|
|
||||||
y="235.85597" />
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
id="text38"
|
|
||||||
style="font-style:normal;font-weight:normal;font-size:10.5833px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect40);fill:#000000;fill-opacity:1;stroke:none;"
|
|
||||||
transform="translate(9.2673019,8.9560368)"><tspan
|
|
||||||
x="0"
|
|
||||||
y="245.21921"><tspan>Lié à :
|
|
||||||
</tspan></tspan><tspan
|
|
||||||
x="0"
|
|
||||||
y="258.44833"><tspan>{{liens}}</tspan></tspan></text>
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
id="text969"
|
|
||||||
style="fill:black;fill-opacity:1;line-height:1.25;stroke:none;font-family:sans-serif;font-style:normal;font-weight:normal;font-size:10.58333333px;white-space:pre;shape-inside:url(#rect971);" />
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 5.3 KiB |
@ -10,9 +10,9 @@
|
|||||||
<body>
|
<body>
|
||||||
<header>
|
<header>
|
||||||
<span id="layout">
|
<span id="layout">
|
||||||
<img src="../{{topo}}/forme.png">
|
<img src="../{{topo}}/logo.png">
|
||||||
</span>
|
</span>
|
||||||
<span id="ip">
|
<span id="title">
|
||||||
<p>IP: {{IP}}</p>
|
<p>IP: {{IP}}</p>
|
||||||
</span>
|
</span>
|
||||||
<span id="number">
|
<span id="number">
|
||||||
@ -35,7 +35,7 @@
|
|||||||
{% if particularites %}
|
{% if particularites %}
|
||||||
<ul>
|
<ul>
|
||||||
{% for p in particularites %}
|
{% for p in particularites %}
|
||||||
<li>{{ p }}</li>
|
<li>{{ p | replace("{", "") | replace("}", "") | replace("'", "")}}</li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
{% else %}
|
{% else %}
|
||||||
@ -47,7 +47,7 @@
|
|||||||
{% if liens %}
|
{% if liens %}
|
||||||
<ul>
|
<ul>
|
||||||
{% for l in liens %}
|
{% for l in liens %}
|
||||||
<li>{{ l | replace("{", "") | replace("}", "")}}</li>
|
<li>{{ l | replace("{", "") | replace("}", "") | replace("'", "")}}</li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
{% endif %}
|
{% endif %}
|
@ -1,297 +0,0 @@
|
|||||||
---
|
|
||||||
linéaire:
|
|
||||||
roles:
|
|
||||||
- num: 1
|
|
||||||
IP: 192.168.0.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 192.168.3.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 2: 192.168.1.1
|
|
||||||
- num: 2
|
|
||||||
IP: 192.168.1.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 192.168.3.1
|
|
||||||
particularites:
|
|
||||||
- Ne marche plus après avoir transmis 3 messages
|
|
||||||
liens:
|
|
||||||
- 1: 192.168.0.1
|
|
||||||
- 3: 192.168.2.1
|
|
||||||
- num: 3
|
|
||||||
IP: 192.168.2.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 192.168.0.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 2: 192.168.1.1
|
|
||||||
- 4: 192.168.3.1
|
|
||||||
- num: 4
|
|
||||||
IP: 192.168.3.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 192.168.5.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 3: 192.168.2.1
|
|
||||||
- 5: 192.168.4.1
|
|
||||||
- num: 5
|
|
||||||
IP: 192.168.4.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 192.168.1.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 4: 192.168.3.1
|
|
||||||
- 6: 192.168.5.1
|
|
||||||
- num: 6
|
|
||||||
IP: 192.168.5.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 192.168.2.1
|
|
||||||
particularites:
|
|
||||||
- Ne marche plus après avoir transmis 3 messages
|
|
||||||
liens:
|
|
||||||
- 5: 192.168.4.1
|
|
||||||
|
|
||||||
anneau:
|
|
||||||
roles:
|
|
||||||
- num: 1
|
|
||||||
IP: 10.10.0.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 10.10.3.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 6: 10.10.5.1
|
|
||||||
- 2: 10.10.1.1
|
|
||||||
- num: 2
|
|
||||||
IP: 10.10.1.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 10.10.5.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 1: 10.10.0.1
|
|
||||||
- 3: 10.10.2.1
|
|
||||||
- num: 3
|
|
||||||
IP: 10.10.2.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 10.10.4.1
|
|
||||||
particularites:
|
|
||||||
- Ne marche plus après avoir transmis 5 messages
|
|
||||||
liens:
|
|
||||||
- 2: 10.10.1.1
|
|
||||||
- 4: 10.10.3.1
|
|
||||||
- num: 4
|
|
||||||
IP: 10.10.3.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 10.10.0.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 3: 10.10.2.1
|
|
||||||
- 5: 10.10.4.1
|
|
||||||
- num: 5
|
|
||||||
IP: 10.10.4.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 10.10.1.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 4: 10.10.3.1
|
|
||||||
- 6: 10.10.5.1
|
|
||||||
- num: 6
|
|
||||||
IP: 10.10.5.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 10.10.3.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 5: 10.10.4.1
|
|
||||||
- 1: 10.10.0.1
|
|
||||||
|
|
||||||
étoile:
|
|
||||||
roles:
|
|
||||||
- num: 1
|
|
||||||
IP: 77.82.0.1
|
|
||||||
objectifs:
|
|
||||||
particularites:
|
|
||||||
- Après 10 transmissions, ne marche plus.
|
|
||||||
- (*) Ouvrir et noter tous les messages transmis.
|
|
||||||
liens:
|
|
||||||
- 2: 77.82.1.1
|
|
||||||
- 3: 77.82.2.1
|
|
||||||
- 4: 77.82.3.1
|
|
||||||
- 5: 77.82.4.1
|
|
||||||
- 6: 77.82.5.1
|
|
||||||
- num: 2
|
|
||||||
IP: 77.82.1.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 77.82.10.1
|
|
||||||
- Envoyer un message à 77.82.5.1 et demander une réponse
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 1: 77.82.0.1
|
|
||||||
- num: 3
|
|
||||||
IP: 77.82.2.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 77.82.3.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 1: 77.82.0.1
|
|
||||||
- num: 4
|
|
||||||
IP: 77.82.3.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 77.82.4.1
|
|
||||||
- Envoyer un message à 77.82.2.1 et demander une réponse
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 1: 77.82.0.1
|
|
||||||
- num: 5
|
|
||||||
IP: 77.82.4.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 77.82.5.1
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 1: 77.82.0.1
|
|
||||||
- num: 6
|
|
||||||
IP: 77.82.5.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer un message à 77.82.1.1
|
|
||||||
- Envoyer un message à 77.82.4.1 et demander une réponse
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 1: 77.82.0.1
|
|
||||||
|
|
||||||
|
|
||||||
mesh:
|
|
||||||
roles:
|
|
||||||
- num: 1
|
|
||||||
IP: 77.82.1.1
|
|
||||||
objectifs:
|
|
||||||
particularites:
|
|
||||||
- Envoyer message à 131.240.1.1 et demander une réponse.
|
|
||||||
liens:
|
|
||||||
- 2: 77.82.0.1
|
|
||||||
- num: 2
|
|
||||||
IP: 77.82.0.1
|
|
||||||
objectifs:
|
|
||||||
particularites:
|
|
||||||
- À partir du 2e message transmis, ouvre les messages, barre ce qui est écrit et écrit quelque chose d'autre.
|
|
||||||
liens:
|
|
||||||
- 1: 77.82.1.1
|
|
||||||
- 3: 131.240.0.1
|
|
||||||
- 7: 51.12.0.1
|
|
||||||
- num: 3
|
|
||||||
IP: 131.240.0.1
|
|
||||||
objectifs:
|
|
||||||
- Après 5 messages transmis, arrête de transmettre les messages.
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 4: 131.240.1.1
|
|
||||||
- 2: 77.82.0.1
|
|
||||||
- 5: 151.10.0.1
|
|
||||||
- 7: 51.12.0.1
|
|
||||||
- num: 4
|
|
||||||
IP: 131.240.1.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer message à 151.10.1.1 et demander une réponse.
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 3: 131.240.0.1
|
|
||||||
- num: 5
|
|
||||||
IP: 151.10.0.1
|
|
||||||
objectifs:
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 6: 151.10.1.1
|
|
||||||
- 3: 131.240.0.1
|
|
||||||
- 7: 51.12.0.1
|
|
||||||
- num: 6
|
|
||||||
IP: 151.10.1.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer message à 51.12.1.1 et demander une réponse.
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 5: 151.10.0.1
|
|
||||||
- num: 7
|
|
||||||
IP: 51.12.0.1
|
|
||||||
objectifs:
|
|
||||||
- Après 3 messages transmis, enregistre tous les messages qu'il transmet.
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 8: 51.12.1.1
|
|
||||||
- 2: 77.82.0.1
|
|
||||||
- 3: 131.240.0.1
|
|
||||||
- 5: 151.10.0.1
|
|
||||||
- num: 8
|
|
||||||
IP: 51.12.1.1
|
|
||||||
objectifs:
|
|
||||||
- Envoyer message à 77.81.1.1 et demander une réponse.
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 7: 51.12.0.1
|
|
||||||
|
|
||||||
mesh_dns:
|
|
||||||
roles:
|
|
||||||
- num: 1
|
|
||||||
IP: 77.82.1.1
|
|
||||||
objectifs:
|
|
||||||
- Se connecter à 2gt1.stex pour demander la page HTML
|
|
||||||
particularites:
|
|
||||||
- Utilisateur du web.
|
|
||||||
- Connaît le serveur DNS à l'adresse 131.82.0.1
|
|
||||||
liens:
|
|
||||||
- 2: 77.82.0.1
|
|
||||||
- num: 2
|
|
||||||
IP: 77.82.0.1
|
|
||||||
objectifs:
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 1: 77.82.1.1
|
|
||||||
- 3: 131.240.0.1
|
|
||||||
- 7: 51.12.0.1
|
|
||||||
- num: 3
|
|
||||||
IP: 131.240.0.1
|
|
||||||
objectifs:
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 4: 131.240.1.1
|
|
||||||
- 2: 77.82.0.1
|
|
||||||
- 5: 151.10.0.1
|
|
||||||
- 7: 51.12.0.1
|
|
||||||
- num: 4
|
|
||||||
IP: 131.240.1.1
|
|
||||||
objectifs:
|
|
||||||
- Répondre aux requêtes DNS.
|
|
||||||
particularites:
|
|
||||||
- Serveur DNS, connait les noms de domaine suivants
|
|
||||||
- SNT.stex à l'adresse 131..240.1.1
|
|
||||||
- 2gt1.stex à l'adresse 151.10.1.1
|
|
||||||
liens:
|
|
||||||
- 3: 131.240.0.1
|
|
||||||
- num: 5
|
|
||||||
IP: 151.10.0.1
|
|
||||||
objectifs:
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 6: 151.10.1.1
|
|
||||||
- 3: 131.240.0.1
|
|
||||||
- 7: 51.12.0.1
|
|
||||||
- num: 6
|
|
||||||
IP: 151.10.1.1
|
|
||||||
objectifs:
|
|
||||||
- Renvoyer une page HTML quand on nous le demande.
|
|
||||||
particularites:
|
|
||||||
- Serveur Web connu sous le nom de domaine 2gt1.stex
|
|
||||||
liens:
|
|
||||||
- 5: 151.10.0.1
|
|
||||||
- num: 7
|
|
||||||
IP: 51.12.0.1
|
|
||||||
objectifs:
|
|
||||||
particularites:
|
|
||||||
liens:
|
|
||||||
- 8: 51.12.1.1
|
|
||||||
- 2: 77.82.0.1
|
|
||||||
- 3: 131.240.0.1
|
|
||||||
- 5: 151.10.0.1
|
|
||||||
- num: 8
|
|
||||||
IP: 51.12.1.1
|
|
||||||
objectifs:
|
|
||||||
- Renvoyer une page HTML quand on nous le demande.
|
|
||||||
particularites:
|
|
||||||
- Serveur Web connu sous le nom de domaine SNT.stex
|
|
||||||
liens:
|
|
||||||
- 7: 51.12.0.1
|
|
37
SNT/03_Internet/Simulation/topo.tpl.html
Normal file
37
SNT/03_Internet/Simulation/topo.tpl.html
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
<!doctype html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<link href="../role.css" rel="stylesheet">
|
||||||
|
<title>{{ topo }}</title>
|
||||||
|
<meta name="description" content="topologie">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<header>
|
||||||
|
<span id="layout">
|
||||||
|
<img src="../{{topo}}/logo.png">
|
||||||
|
</span>
|
||||||
|
<span id="title">
|
||||||
|
<p>Réseau: {{ topo }}</p>
|
||||||
|
</span>
|
||||||
|
<span id="number">
|
||||||
|
</span>
|
||||||
|
</header>
|
||||||
|
<main>
|
||||||
|
<section id="description">
|
||||||
|
<h2>Description:</h2>
|
||||||
|
<p>{{ description }}</p>
|
||||||
|
<h2>Mise en place</h2>
|
||||||
|
<p>Distribuez les rôles, positionnez vous puis reliez vous pour former le réseau suivant</p>
|
||||||
|
<img src="../{{topo}}/shape.png">
|
||||||
|
<h2>Scénarios: </h2>
|
||||||
|
<ul>
|
||||||
|
{% for s in scenarios %}
|
||||||
|
<li>{{ s | replace("{", "") | replace("}", "") | replace("'", "")}}</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
</main>
|
||||||
|
</body>
|
||||||
|
</html>
|
Loading…
Reference in New Issue
Block a user