Fix missing images on English pages
Hugo only auto-shares page-bundle resources across translations when each language has its own content directory; with filename-based translation (index.fr.md / index.en.md in the same folder) a resource with no language code is assigned to the default language only. Add .en.-suffixed copies of every image referenced from English pages and point the English markdown at them.
|
After Width: | Height: | Size: 21 KiB |
@@ -28,7 +28,7 @@ But several needs emerged:
|
||||
|
||||
## The Overall Architecture
|
||||
|
||||

|
||||

|
||||
|
||||
### Tech Stack
|
||||
|
||||
|
||||
BIN
content/documentation/VXLAN/beginners/media_layers.en.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
content/documentation/VXLAN/beginners/transports.en.png
Normal file
|
After Width: | Height: | Size: 29 KiB |
@@ -55,7 +55,7 @@ The goal of **VXLAN** is to **extend layer 2** across a layer 3 (IP) network. Th
|
||||
|
||||
> **In plain terms:** Ethernet frames (layer 2) are encapsulated inside a UDP packet (layer 4), which is itself carried over IP (layer 3).
|
||||
|
||||

|
||||

|
||||
|
||||
> [!NOTE]**The "hardware" layers**
|
||||
>
|
||||
@@ -87,7 +87,7 @@ The train runs on rails (the **IP network**, layer 3). The rail tracks are alrea
|
||||
- **Isolation and segmentation:** Just as several trains can run on the same railway line, it's possible to operate different VXLAN tunnels (each with its own VNI) over the same IP infrastructure.
|
||||
- **Elasticity and reliability:** By relying on layer 3, VXLAN benefits from all the optimizations of IP routing (route recalculation, fault tolerance, etc.).
|
||||
|
||||

|
||||

|
||||
|
||||
## Real-world use cases 🏭
|
||||
|
||||
|
||||
@@ -66,11 +66,11 @@ In my day-to-day networking adventures, I deploy ContainerLab-based setups with
|
||||
|
||||
DevPod uses **Providers**, which are configuration modules that define where and how DevPod launches your environment. Here's the list of providers:
|
||||
|
||||

|
||||

|
||||
|
||||
We're going to focus on the **AWS Provider** — even though there are plenty of configuration options:
|
||||
|
||||

|
||||

|
||||
|
||||
Before you panic at all these settings, don't worry. If you're just doing a bit of experimenting, the default values will usually do the job. 🙌
|
||||
|
||||
@@ -245,7 +245,7 @@ Go back to **Users** → **devpod-tool-user** → **Permissions** to confirm tha
|
||||
|
||||
- If you created a programmatic user, make sure to note down the **Access Key ID** and the **Secret Access Key**.
|
||||
|
||||

|
||||

|
||||
|
||||
**Bonus**: Note your **VPC ID** (in the VPC section on AWS). You'll need it when configuring DevPod.
|
||||
|
||||
@@ -277,7 +277,7 @@ When prompted for:
|
||||
|
||||
Click **Add Provider**.
|
||||
|
||||

|
||||

|
||||
|
||||
## Testing a deployment 🧪
|
||||
|
||||
@@ -292,23 +292,23 @@ Let's do a quick test using one of the pre-built Docker images:
|
||||
5. On the right, select a quick-start example (e.g., Python). 🐍
|
||||
6. Click **Create Workspace**.
|
||||
|
||||

|
||||

|
||||
|
||||
Wait a few moments, and your cloud-based environment will pop up in VS Code. 🎊
|
||||
|
||||

|
||||

|
||||
|
||||
### Stop
|
||||
|
||||
When you're not using the environment, click **Stop** to shut down the EC2 instance. You'll only pay for storage — no compute time. Great for your wallet. 💰
|
||||
|
||||

|
||||

|
||||
|
||||
### Delete
|
||||
|
||||
Deleting the workspace removes all AWS resources associated with that environment, so you won't pay a dime. But you'll need to redeploy if you want to use it again. ♻️
|
||||
|
||||

|
||||

|
||||
|
||||
## Conclusion 💡
|
||||
|
||||
|
||||
BIN
content/documentation/devpod/aws_options.en.png
Normal file
|
After Width: | Height: | Size: 188 KiB |
BIN
content/documentation/devpod/delete_instance.en.png
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
content/documentation/devpod/devpod_user.en.png
Normal file
|
After Width: | Height: | Size: 186 KiB |
BIN
content/documentation/devpod/new_provider.en.png
Normal file
|
After Width: | Height: | Size: 117 KiB |
BIN
content/documentation/devpod/new_worskapce.en.png
Normal file
|
After Width: | Height: | Size: 243 KiB |
BIN
content/documentation/devpod/provider.en.png
Normal file
|
After Width: | Height: | Size: 184 KiB |
BIN
content/documentation/devpod/stopped_instance.en.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
content/documentation/devpod/vscode.en.png
Normal file
|
After Width: | Height: | Size: 211 KiB |
BIN
content/documentation/securité/cadenas_vert/certificat.en.png
Normal file
|
After Width: | Height: | Size: 55 KiB |
@@ -10,7 +10,7 @@ cascade:
|
||||
|
||||
You've seen it thousands of times, haven't you? That little **green padlock** (or sometimes gray, depending on your browser and the site) that shows up next to a website's address in your navigation bar. You click on it, you look at it, you think "cool, it's secure," and you move on.
|
||||
|
||||

|
||||

|
||||
|
||||
But... do you really know what it means? 🤔 All the **mechanics that kick in** just so this little symbol appears? It's much more than a simple icon! It's the visible part of an iceberg. \
|
||||
**So, what's our mission today? 🚀**
|
||||
|
||||
|
After Width: | Height: | Size: 222 KiB |
|
After Width: | Height: | Size: 336 KiB |
|
After Width: | Height: | Size: 304 KiB |
@@ -22,7 +22,7 @@ The principle of HTTPS is comparable to sending mail in a safe where only the se
|
||||
|
||||
**SSL Bumping** gets around this problem by inserting itself in the middle of the communication:
|
||||
|
||||

|
||||

|
||||
|
||||
The proxy will:
|
||||
1. **Intercept** the client's HTTPS connection.
|
||||
@@ -57,7 +57,7 @@ For SSL Bumping to work, the proxy must be able to generate certificates on the
|
||||
|
||||
When you try to access `https://www.example.com`:
|
||||
|
||||

|
||||

|
||||
|
||||
1. The proxy intercepts your request.
|
||||
2. It connects to the real `example.com` server and retrieves its legitimate certificate.
|
||||
@@ -77,7 +77,7 @@ To really understand the mechanism, nothing beats hands-on practice. I've prepar
|
||||
|
||||
### Lab Architecture
|
||||
|
||||

|
||||

|
||||
|
||||
### Quick Deployment
|
||||
|
||||
|
||||
|
After Width: | Height: | Size: 170 KiB |
|
After Width: | Height: | Size: 93 KiB |
@@ -44,7 +44,7 @@ In a standard site, the connection of leaf devices to the spines follows these r
|
||||
* **Leaf Eth2 Interface:** Always connected to the Spine 2 Eth2 interface.
|
||||
* **Leaf Eth3 Interface:** Always dedicated to connecting to the access switch present in the same building.
|
||||
|
||||

|
||||

|
||||
|
||||
> [!NOTE] Simplification for the POC
|
||||
> For the purposes of this **Proof of Concept**, we opted for a simplified architecture without advanced redundancy at the leaf-spine connection level.
|
||||
@@ -155,7 +155,7 @@ Choose site number or 'new': 1
|
||||
> [!NOTE] Netbox Plugin
|
||||
> The configuration can easily be visualized with the help of the plugin: [netbox_topology_views](https://github.com/netbox-community/netbox-topology-views)
|
||||
|
||||

|
||||

|
||||
|
||||
> [!TIP]
|
||||
> Link to the Cookbook [here](https://github.com/darnodo/projet-vxlan-automation/blob/dev/documentation/CookBook.md#%EF%B8%8F-create-fabric)
|
||||
@@ -262,7 +262,7 @@ Now that we know how Netbox generates the configurations, let's see how we use t
|
||||
* Click on the device you're interested in (for example, one of our leafs).
|
||||
* And there we have a magic tab: **Render Config**! Clicking on it shows the configuration Netbox generated for this device using the Jinja2 template and its own data.
|
||||
|
||||

|
||||

|
||||
|
||||
2. **The Human Touch in Containerlab 🖐️** For now, we don't have a script that automatically pushes these configurations to our devices in Containerlab. So we're going to do it the old-fashioned way (but that's fine for a demo!):
|
||||
|
||||
@@ -312,9 +312,9 @@ For more information, I'll point you to the article on [My First Lab](../../netl
|
||||
|
||||
And then, via VSCode, it's possible to launch Wireshark directly:
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
## Conclusion ✨
|
||||
|
||||
|
||||
|
After Width: | Height: | Size: 105 KiB |
|
After Width: | Height: | Size: 50 KiB |
|
After Width: | Height: | Size: 291 KiB |
BIN
content/netlab/first_lab/Graph_view.en.png
Normal file
|
After Width: | Height: | Size: 70 KiB |
1
content/netlab/first_lab/VXLAN.en.svg
Normal file
|
After Width: | Height: | Size: 30 KiB |
@@ -43,7 +43,7 @@ Our lab will simulate a VXLAN topology consisting of:
|
||||
|
||||
The following diagram illustrates the VXLAN topology:
|
||||
|
||||

|
||||

|
||||
|
||||
Here's the Containerlab topology file (`lab_vxlan.yml`) used for this configuration:
|
||||
|
||||
@@ -126,7 +126,7 @@ We'll deploy the lab with **DevPod** in two ways:
|
||||
- Choose your default IDE.
|
||||
- Finally, click **Create Workspace**.
|
||||
|
||||

|
||||

|
||||
|
||||
### 2. Using a Local Folder 🗂️
|
||||
|
||||
@@ -135,7 +135,7 @@ If you prefer to use your local repository:
|
||||
- The only difference is in the **Workspace source**.
|
||||
- Simply point it to your local repository.
|
||||
|
||||

|
||||

|
||||
|
||||
## Starting the Lab 🎬
|
||||
|
||||
@@ -169,7 +169,7 @@ If you prefer to use your local repository:
|
||||
|
||||
Ports (for example, port 50080 mentioned in `devcontainer.json`) are forwarded. Access the graphical view via [localhost](http://localhost:50080).
|
||||
|
||||

|
||||

|
||||
|
||||
## Using EdgeShark 🦈
|
||||
|
||||
@@ -199,12 +199,12 @@ DOCKER_DEFAULT_PLATFORM= docker compose up -d
|
||||
Access EdgeShark via [localhost:5001](http://localhost:5001).
|
||||
|
||||
- **EdgeShark View**:
|
||||

|
||||

|
||||
|
||||
- **Integration with Wireshark**:
|
||||
By clicking the Wireshark icon in EdgeShark, you can launch Wireshark locally.
|
||||

|
||||

|
||||

|
||||

|
||||
|
||||
## Conclusion 🎉
|
||||
|
||||
|
||||
BIN
content/netlab/first_lab/devpod_configuration.en.png
Normal file
|
After Width: | Height: | Size: 201 KiB |
BIN
content/netlab/first_lab/devpod_configuration_local.en.png
Normal file
|
After Width: | Height: | Size: 244 KiB |
BIN
content/netlab/first_lab/edge_wireshark.en.png
Normal file
|
After Width: | Height: | Size: 252 KiB |
BIN
content/netlab/first_lab/edgeshark.en.png
Normal file
|
After Width: | Height: | Size: 137 KiB |
BIN
content/netlab/first_lab/edgeshark_interface.en.png
Normal file
|
After Width: | Height: | Size: 24 KiB |