Skip to content

Commit 5edf1c6

Browse files
committedDec 15, 2024·
updated about section. Minor update to a post
1 parent 5b6896a commit 5edf1c6

File tree

11 files changed

+181
-62
lines changed

11 files changed

+181
-62
lines changed
 

‎content/about.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# Hello world
22

3-
Welcome to my blog. My name is Kapil Agrawal (pronunciation: `cup-ill`) and I am a *Security Engineer* by profession. My current role mostly focuses on Network security, DevSecOps and developing security tools and automating workflows for security operations. Prior to moving into a Cybersecurity role, I was a Network Engineer and had several years of experience working in service provider and HPC data center networking and automation. I have many interests most of which involve Linux, networking, security, software, Infrastucture as code. In my downtime I enjoy hiking, kayaking or working out (HIIT), gaming, traveling or playing with Juniper (my cat).
3+
Welcome to my blog. My name is Kapil Agrawal (pronunciation: `cup-ill`) and I am a *Security Engineer* by profession. These days I mostly focus on things involving Kubernetes networking and security. I also have an extensive background in network operations and infrastructure automation. Generally speaking, I like to live at the intersection of networking, systems, software & security. In my downtime I go hiking or kayaking, traveling or staying home gaming, working in my homelab or playing with Juniper (my cat).
44

55
## Motivation
66

7-
Since I rely heavily on Open source and the work that others put out online for free, I wanted to do my due diligence and share some of the cool stuff that I get to learn and work on which I usually end up documenting somewhere in my notes anyway. My hope is that someone on the internet could benefit from the information here plus it helps me work on my technical writing skills and also gives me a good reason to finally start using this domain that I have been squatting on for so long.
7+
Since I rely heavily on Open source and the work that others put out online for free, I wanted to do my due diligence and share some of the cool stuff that I get to learn and work on which I usually end up documenting somewhere in my notes anyway. My hope is that someone on the internet could benefit from the information here and it also gives me a good reason to finally start using this domain that I have been squatting on for so long. I am super passionate about learning and sharing.
88

99
Thanks for stopping by. I hope you find the articles in this blog helpful.
1010

‎content/posts/mikrotik-ipv6.md

+21-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,27 @@
11
---
22
title: IPv6 prefix delegation on Mikrotik
3-
date: 2024-05-26
3+
date: 2024-12-14
44
tags: ["IPv6", "Mikrotik", "Networking"]
55
author: "Kapil Agrawal"
66
comments: false
7-
description: "RouterOS config to get IPv6 prefix delegation from your ISP"
7+
description: "Mikrotik RouterOS config for IPv6 prefix delegation"
88
---
9-
## Config
9+
## RouterOS config
10+
11+
```sh
12+
# Configure interface group
13+
/interface list add comment="UPLINK to ISP" name=WAN
14+
/interface list member add comment="WAN facing interface" interface=ether1 list=WAN
15+
16+
# Enable router-advertisement incoming from the ISP
17+
/ipv6 settings set accept-router-advertisements=yes
18+
19+
# Request an IPv6 prefix over WAN interface; my ISP hands out a /56
20+
/ipv6 dhcp-client add add-default-route=yes interface=ether1 pool-name=delegation pool-prefix-length=56 prefix-hint=::/56 request=address,prefix
21+
22+
# Only accept inbound router-advertisements on the WAN interface
23+
/ipv6 firewall filter add action=drop chain=input icmp-options=134:0-255 in-interface-list=!WAN protocol=icmpv6
24+
25+
# Allow prefix delegatation on WAN interface
26+
/ipv6 firewall filter add action=accept chain=input comment="accept DHCPv6-Client prefix delegation." dst-port=546 protocol=udp src-address=fe80::/10
27+
```

‎public/about/index.html

+5-5
Large diffs are not rendered by default.

‎public/archives/index.html

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
<!doctype html><html lang=en dir=auto><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Archives | netops2devops</title><meta name=keywords content><meta name=description content="Archives - netops2devops"><meta name=author content="Kapil Agrawal"><link rel=canonical href=http://localhost:1313/archives/><link crossorigin=anonymous href=/assets/css/stylesheet.min.d1687d10e64e13dbbdcf0fb91c3e6fbfcb11296ada6011568902ae90b8552e41.css integrity="sha256-0Wh9EOZOE9u9zw+5HD5vv8sRKWraYBFWiQKukLhVLkE=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/favicon.ico><link rel=apple-touch-icon href=http://localhost:1313/apple-touch-icon.png><link rel=alternate hreflang=en href=http://localhost:1313/archives/><meta name=twitter:card content="summary"><meta name=twitter:title content="Archives | netops2devops"><meta name=twitter:description content><meta property="og:title" content="Archives | netops2devops"><meta property="og:description" content><meta property="og:type" content="article"><meta property="og:url" content="http://localhost:1313/archives/"><meta property="og:image" content="http://localhost:1313/%3Clink%20or%20path%20of%20image%20for%20opengraph,%20twitter-cards%3E"><meta property="article:section" content><meta property="og:site_name" content="netops2devops"><script type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Archives","item":"http://localhost:1313/archives/"}]}</script><script type=application/ld+json>{"@context":"https://schema.org","@type":"BlogPosting","headline":"Archives | netops2devops","name":"Archives","description":"","keywords":[],"wordCount":"0","inLanguage":"en","datePublished":"0001-01-01T00:00:00Z","dateModified":"0001-01-01T00:00:00Z","author":{"@type":"Person","name":"Kapil Agrawal"},"mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:1313/archives/"},"publisher":{"@type":"Organization","name":"netops2devops","logo":{"@type":"ImageObject","url":"http://localhost:1313/favicon.ico"}}}</script><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary-bg:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51)}.list-page{background:var(--theme)}.list-page:not(.dark)::-webkit-scrollbar-track{background:0 0}.list-page:not(.dark)::-webkit-scrollbar-thumb{border-color:var(--theme)}}</style></noscript></head><body class="list-page type-page kind-page layout-archives" id=top><script data-no-instant>function switchTheme(e){switch(e){case"light":document.body.classList.remove("dark");break;case"dark":document.body.classList.add("dark");break;default:window.matchMedia("(prefers-color-scheme: dark)").matches&&document.body.classList.add("dark")}}function isDarkTheme(){return document.body.className.includes("dark")}function getPrefTheme(){return localStorage.getItem("pref-theme")}function setPrefTheme(e){switchTheme(e),localStorage.setItem("pref-theme",e)}const toggleThemeCallbacks={};toggleThemeCallbacks.main=e=>{setPrefTheme(e?"light":"dark")},window.addEventListener("toggle-theme",function(){const e=isDarkTheme();for(const t in toggleThemeCallbacks)toggleThemeCallbacks[t](e)});function toggleThemeListener(){window.dispatchEvent(new CustomEvent("toggle-theme"))}</script><script>(function(){const t="auto",e=getPrefTheme(),n=e||t;switchTheme(n)})()</script><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="netops2devops (Alt + H)">netops2devops</a>
22
<span class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)">
33
<svg id="moon" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
4-
<svg id="sun" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></span></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=Posts>Posts</a></li><li><a href=http://localhost:1313/search/ title="Search (Alt + /)" data-no-instant accesskey=/>Search</a></li><li><a href=http://localhost:1313/tags/ title=Tags>Tags</a></li><li><a href=http://localhost:1313/archives/ title=Archive class=active>Archive</a></li><li><a href=http://localhost:1313/about/ title=About>About</a></li></ul></nav></header><main class="main post"><header class=page-header><h1>Archives</h1></header><div class=archive-year><h2 class=archive-year-header>2024<sup class=archive-count>&nbsp;&nbsp;2</sup></h2><div class=archive-month><h3 class=archive-month-header>May<sup class=archive-count>&nbsp;&nbsp;2</sup></h3><div class=archive-posts><div class=archive-entry><h3 class=archive-entry-title>Say goodbye to boilerplate code</h3><div class=archive-meta><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
5-
<span>May 27, 2024</span></span><span class=meta-item>
4+
<svg id="sun" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></span></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=Posts>Posts</a></li><li><a href=http://localhost:1313/search/ title="Search (Alt + /)" data-no-instant accesskey=/>Search</a></li><li><a href=http://localhost:1313/tags/ title=Tags>Tags</a></li><li><a href=http://localhost:1313/archives/ title=Archive class=active>Archive</a></li><li><a href=http://localhost:1313/about/ title=About>About</a></li></ul></nav></header><main class="main post"><header class=page-header><h1>Archives</h1></header><div class=archive-year><h2 class=archive-year-header>2024<sup class=archive-count>&nbsp;&nbsp;2</sup></h2><div class=archive-month><h3 class=archive-month-header>December<sup class=archive-count>&nbsp;&nbsp;1</sup></h3><div class=archive-posts><div class=archive-entry><h3 class=archive-entry-title>IPv6 prefix delegation on Mikrotik</h3><div class=archive-meta><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
5+
<span>December 14, 2024</span></span><span class=meta-item>
66
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-tag meta-icon" style="user-select:text"><path d="M20.59 13.41l-7.17 7.17a2 2 0 01-2.83.0L2 12V2h10l8.59 8.59a2 2 0 010 2.82z" style="user-select:text"/><line x1="7" y1="7" x2="7" y2="7" style="user-select:text"/></svg>
7-
<span class=post-tags><a href=http://localhost:1313/tags/cookiecutter/>Cookiecutter</a><a href=http://localhost:1313/tags/dev/>Dev</a></span></span><span class=meta-item>
7+
<span class=post-tags><a href=http://localhost:1313/tags/ipv6/>IPv6</a><a href=http://localhost:1313/tags/mikrotik/>Mikrotik</a><a href=http://localhost:1313/tags/networking/>Networking</a></span></span><span class=meta-item>
88
<svg width="24" height="24" viewBox="0 0 24 24" stroke="currentcolor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="12" r="9"/><polyline points="12 7 12 12 15 15"/></svg>
99
<span>1 min</span></span><span class=meta-item>
10-
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></div><a class=entry-link aria-label="post link to Say goodbye to boilerplate code" href=http://localhost:1313/posts/my-cookiecutter/></a></div><div class=archive-entry><h3 class=archive-entry-title>IPv6 prefix delegation on Mikrotik</h3><div class=archive-meta><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
11-
<span>May 26, 2024</span></span><span class=meta-item>
10+
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></div><a class=entry-link aria-label="post link to IPv6 prefix delegation on Mikrotik" href=http://localhost:1313/posts/mikrotik-ipv6/></a></div></div></div><div class=archive-month><h3 class=archive-month-header>May<sup class=archive-count>&nbsp;&nbsp;1</sup></h3><div class=archive-posts><div class=archive-entry><h3 class=archive-entry-title>Say goodbye to boilerplate code</h3><div class=archive-meta><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
11+
<span>May 27, 2024</span></span><span class=meta-item>
1212
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-tag meta-icon" style="user-select:text"><path d="M20.59 13.41l-7.17 7.17a2 2 0 01-2.83.0L2 12V2h10l8.59 8.59a2 2 0 010 2.82z" style="user-select:text"/><line x1="7" y1="7" x2="7" y2="7" style="user-select:text"/></svg>
13-
<span class=post-tags><a href=http://localhost:1313/tags/ipv6/>IPv6</a><a href=http://localhost:1313/tags/mikrotik/>Mikrotik</a><a href=http://localhost:1313/tags/networking/>Networking</a></span></span><span class=meta-item>
13+
<span class=post-tags><a href=http://localhost:1313/tags/cookiecutter/>Cookiecutter</a><a href=http://localhost:1313/tags/dev/>Dev</a></span></span><span class=meta-item>
1414
<svg width="24" height="24" viewBox="0 0 24 24" stroke="currentcolor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="12" r="9"/><polyline points="12 7 12 12 15 15"/></svg>
1515
<span>1 min</span></span><span class=meta-item>
16-
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></div><a class=entry-link aria-label="post link to IPv6 prefix delegation on Mikrotik" href=http://localhost:1313/posts/mikrotik-ipv6/></a></div></div></div></div></main><footer class=footer><span>&copy; 2024 <a href=http://localhost:1313/>netops2devops</a></span><span style=display:inline-block;margin-left:1em>
16+
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></div><a class=entry-link aria-label="post link to Say goodbye to boilerplate code" href=http://localhost:1313/posts/my-cookiecutter/></a></div></div></div></div></main><footer class=footer><span>&copy; 2024 <a href=http://localhost:1313/>netops2devops</a></span><span style=display:inline-block;margin-left:1em>
1717
<a href=https://creativecommons.org/licenses/by-sa/4.0/>CC BY-SA</a>
1818
</span><span style=display:inline-block;margin-left:1em>Powered by
1919
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &

‎public/index.html

+7-7
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,19 @@
44
<svg id="sun" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></span></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=Posts>Posts</a></li><li><a href=http://localhost:1313/search/ title="Search (Alt + /)" data-no-instant accesskey=/>Search</a></li><li><a href=http://localhost:1313/tags/ title=Tags>Tags</a></li><li><a href=http://localhost:1313/archives/ title=Archive>Archive</a></li><li><a href=http://localhost:1313/about/ title=About>About</a></li></ul></nav></header><main class=main><article class="first-entry home-info"><header class=entry-header><h1></h1></header><section class=entry-content><strong>All things networking, systems, software and security</strong></section><footer class=entry-footer><div class=social-icons><a href=https://github.com/netops2devops target=_blank rel="noopener noreferrer me" title=Github><svg viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg>
55
</a><a href=https://linkedin.com/in/netops2devops target=_blank rel="noopener noreferrer me" title=Linkedin><svg viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 8a6 6 0 016 6v7h-4v-7a2 2 0 00-2-2 2 2 0 00-2 2v7h-4v-7a6 6 0 016-6z"/><rect x="2" y="9" width="4" height="12"/><circle cx="4" cy="4" r="2"/></svg>
66
</a><a href=https://keybase.io/netops2devops target=_blank rel="noopener noreferrer me" title=Keybase><svg viewBox="0 0 71 76.3" fill="currentcolor" stroke="none"><path d="M6.68 73.99c-.6-1.3-1.4-3.1-1.8-4l-.6-1.7-2 2.2-2 2.2-.2-4.2c-.3-6 .2-12.2 1.2-16.6 2.3-9.8 9.5-18.7 18.8-23.4l2.1-1-.5-1.5c-.3-.8-.6-2.5-.7-3.6l-.2-2.1-2.1-.2c-3.2-.3-4.9-1.2-6-3.5-.6-1.2-.6-1.4-.4-4.6.2-4.2.5-5.1 1.8-6.5 1.6-1.8 2.7-2.1 6.7-1.9 2.9.2 3.5.3 4.8.9.8.4 1.5.8 1.6.8s1-1.1 2.1-2.6l1.9-2.7 1.2.7c.7.4 1.5.9 1.9 1.1l.7.4-.6 1.5c-.3.8-.7 2.2-.8 2.9l-.2 1.4 1.7.2c6.1.6 10.7 4.3 12.4 9.9.5 1.8.5 5.3.0 7-.5 1.6-.5 1.7-.1 1.7.7.0 5.4 2.3 7.3 3.5 3.7 2.4 8 6.6 10.4 10.2 4.5 6.7 6.4 14 5.6 22-.4 4.8-1.3 8.6-2.9 12.3l-.6 1.4h-5l1.2-2.4c1.3-2.6 2.3-6.2 2.8-9.4.3-2.2.4-8.2.1-9.3l-.2-.7-1.3 1.4c-3.2 3.5-7.9 4.5-14.2 2.8-5.4-1.4-7.6-1.7-12.7-1.7-3.9.0-5.2.1-7.3.6-5.8 1.3-9.9 3.2-15.6 7.3-2.1 1.5-3.8 2.7-3.9 2.7-.1.0.2-1 .6-2.3s1.1-3.4 1.5-4.8l.8-2.5-.9.9c-.5.5-1.9 1.9-3.1 3.2l-2.1 2.3.5 1.9c.6 2.5 2 5.6 3.5 7.9.6 1 1.1 1.8 1.1 1.9s-1.2.1-2.6.1h-2.6l-1.1-2.1zm8.8-24.2c4.8-5.1 8.7-9.2 8.8-9.2.1.1-.4 1.6-.9 3.3-3.3 10.4-4 12.4-3.9 12.5.0.0 1.2-.4 2.5-.9 8.5-3.7 18.4-4.2 28.9-1.4 4.7 1.2 6.5 1.2 8.8.0 1.3-.7 1.8-1.1 2.4-2.1 1.1-1.7 1.2-4.1.5-6.3-1.7-4.8-8.3-11-14.5-13.7-3.2-1.4-3.4-1.4-4.1-.7l-.6.6 2.6 3.2c1.4 1.7 2.9 3.6 3.1 4.1.6 1.2.7 3.1.1 4.3-.8 1.7-3.2 2.9-5.1 2.5-.8-.2-1.1-.1-1.9.5-2.2 1.6-4.6 1.2-6.6-1.2-1.6-1.8-2-2.7-2.1-4.5.0-.9-.3-2-.5-2.4-.3-.6-.4-1.3-.4-2.2l.1-1.4-1.3-.3c-1.8-.5-3.9-1.5-5.1-2.4-.6-.4-1.1-.8-1.3-.8s-1.5.6-2.9 1.3c-9.7 5-16 14.3-17 24.8-.1 1-.2 2.3-.3 2.8l-.1.9 1.1-1.1c.5-.5 4.9-5.1 9.7-10.2zm25.9-7.4c.9-.7 1.7-1.3 1.9-1.3.1.0.4.3.7.7.5.8 1.4.8 1.8.1.3-.5.3-.6-5.6-7.8-3.5-4.3-4.2-5-4.7-5-1.2.1-.9 1 1 3.3l1.8 2.2-1 .8c-1.1 1-1.2 1.2-.5 1.8.5.5.6.4 1.6-.3l1.1-.7.7.6c.4.3.6.8.6.9.0.2-.8.9-1.7 1.7-.9.7-1.6 1.5-1.6 1.7.0.3.5 1.1 1.4 2.2.3.6.8.4 2.5-.9zm-10.3-14.2c.6-1.8 2.6-3.2 4.6-3.2 1.1.0 2.7.9 3.8 2.1l1 1.2.9-1.1c2.5-2.8 2.8-6.7.8-10.1-1.5-2.5-4.3-4-8.2-4.4-2.1-.2-2.6-.4-3.7-1.5l-.8-.8-.4.6c-.8 1.2-2.5 5.1-3 6.6-.7 2.3-.4 5.9.5 7.7.9 1.7 3.3 4 4 3.7.1.1.3-.3.5-.8zm-8.9-13.6c.2-.5.7-1.8 1.2-2.8.5-1 .9-2 .9-2.3.0-.9-1-1.3-3.7-1.5-2.4-.2-2.6-.1-3.1.4-.4.4-.6.9-.6 1.6.0.6-.1 1.7-.2 2.6-.2 2.1.1 2.5 2.2 2.8 3.1.2 3 .2 3.3-.8zm-3.1-2.4c0-1.7.2-1.9 1.6-1.9h1.3v2.8h-2.8v-.9zm6.3 58.3c-.6-.6-.8-1-.8-2 0-1.9 1.1-3 2.9-3 1.7.0 2.9 1.2 2.9 2.9.0 1.8-1.1 2.8-3 2.9-1 0-1.4-.2-2-.8zm19.3.3a2.93 2.93.0 011.8-5.3c1.8.0 2.8 1.1 2.9 3 0 1.1-.1 1.4-.8 2s-1 .8-2 .8c-.9.0-1.5-.2-1.9-.5z"/></svg>
7-
</a><a href=https://infosec.exchange/@netops2devops target=_blank rel="noopener noreferrer me" title=Mastadon><svg viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71"/></svg></a></div></footer></article><article class=post-entry><header class=entry-header><h2>Say goodbye to boilerplate code</h2></header><section class=entry-content><p>Using cookiecutter & cruft to generate barebones project template</p></section><footer class=entry-footer><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
8-
<span>May 27, 2024</span></span><span class=meta-item>
7+
</a><a href=https://infosec.exchange/@netops2devops target=_blank rel="noopener noreferrer me" title=Mastadon><svg viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71"/><path d="M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71"/></svg></a></div></footer></article><article class=post-entry><header class=entry-header><h2>IPv6 prefix delegation on Mikrotik</h2></header><section class=entry-content><p>Mikrotik RouterOS config for IPv6 prefix delegation</p></section><footer class=entry-footer><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
8+
<span>December 14, 2024</span></span><span class=meta-item>
99
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-tag meta-icon" style="user-select:text"><path d="M20.59 13.41l-7.17 7.17a2 2 0 01-2.83.0L2 12V2h10l8.59 8.59a2 2 0 010 2.82z" style="user-select:text"/><line x1="7" y1="7" x2="7" y2="7" style="user-select:text"/></svg>
10-
<span class=post-tags><a href=http://localhost:1313/tags/cookiecutter/>Cookiecutter</a><a href=http://localhost:1313/tags/dev/>Dev</a></span></span><span class=meta-item>
10+
<span class=post-tags><a href=http://localhost:1313/tags/ipv6/>IPv6</a><a href=http://localhost:1313/tags/mikrotik/>Mikrotik</a><a href=http://localhost:1313/tags/networking/>Networking</a></span></span><span class=meta-item>
1111
<svg width="24" height="24" viewBox="0 0 24 24" stroke="currentcolor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="12" r="9"/><polyline points="12 7 12 12 15 15"/></svg>
1212
<span>1 min</span></span><span class=meta-item>
13-
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></footer><a class=entry-link aria-label="post link to Say goodbye to boilerplate code" href=http://localhost:1313/posts/my-cookiecutter/></a></article><article class=post-entry><header class=entry-header><h2>IPv6 prefix delegation on Mikrotik</h2></header><section class=entry-content><p>RouterOS config to get IPv6 prefix delegation from your ISP</p></section><footer class=entry-footer><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
14-
<span>May 26, 2024</span></span><span class=meta-item>
13+
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></footer><a class=entry-link aria-label="post link to IPv6 prefix delegation on Mikrotik" href=http://localhost:1313/posts/mikrotik-ipv6/></a></article><article class=post-entry><header class=entry-header><h2>Say goodbye to boilerplate code</h2></header><section class=entry-content><p>Using cookiecutter & cruft to generate barebones project template</p></section><footer class=entry-footer><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
14+
<span>May 27, 2024</span></span><span class=meta-item>
1515
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-tag meta-icon" style="user-select:text"><path d="M20.59 13.41l-7.17 7.17a2 2 0 01-2.83.0L2 12V2h10l8.59 8.59a2 2 0 010 2.82z" style="user-select:text"/><line x1="7" y1="7" x2="7" y2="7" style="user-select:text"/></svg>
16-
<span class=post-tags><a href=http://localhost:1313/tags/ipv6/>IPv6</a><a href=http://localhost:1313/tags/mikrotik/>Mikrotik</a><a href=http://localhost:1313/tags/networking/>Networking</a></span></span><span class=meta-item>
16+
<span class=post-tags><a href=http://localhost:1313/tags/cookiecutter/>Cookiecutter</a><a href=http://localhost:1313/tags/dev/>Dev</a></span></span><span class=meta-item>
1717
<svg width="24" height="24" viewBox="0 0 24 24" stroke="currentcolor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="12" r="9"/><polyline points="12 7 12 12 15 15"/></svg>
1818
<span>1 min</span></span><span class=meta-item>
19-
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></footer><a class=entry-link aria-label="post link to IPv6 prefix delegation on Mikrotik" href=http://localhost:1313/posts/mikrotik-ipv6/></a></article><article class=post-entry><header class=entry-header><h2>My development environment</h2></header><section class=entry-content><p>I use Apple M1 max for daily use. Majority of development happens here. Everyonce in a while when I need x86-64 arch for something I create a linux VM on my local proxmox server that I run at home.
19+
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></footer><a class=entry-link aria-label="post link to Say goodbye to boilerplate code" href=http://localhost:1313/posts/my-cookiecutter/></a></article><article class=post-entry><header class=entry-header><h2>My development environment</h2></header><section class=entry-content><p>I use Apple M1 max for daily use. Majority of development happens here. Everyonce in a while when I need x86-64 arch for something I create a linux VM on my local proxmox server that I run at home.
2020
Tools I use Git VScode Docker Obsidian pre-commit 1 2 3 from pprint import pprint def show(json): pprint(json) 1 2 3 4 5 6 7 package main import fmt // main function func main(){ fmt.Println("Hello World") }</p></section><footer class=entry-footer><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-tag meta-icon" style="user-select:text"><path d="M20.59 13.41l-7.17 7.17a2 2 0 01-2.83.0L2 12V2h10l8.59 8.59a2 2 0 010 2.82z" style="user-select:text"/><line x1="7" y1="7" x2="7" y2="7" style="user-select:text"/></svg>
2121
<span class=post-tags><a href=http://localhost:1313/tags/dev/>Dev</a></span></span><span class=meta-item>
2222
<svg width="24" height="24" viewBox="0 0 24 24" stroke="currentcolor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="12" r="9"/><polyline points="12 7 12 12 15 15"/></svg>

‎public/index.json

+1-1
Large diffs are not rendered by default.

‎public/index.xml

+48-12
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,54 @@
66
<description>Recent content on netops2devops</description>
77
<generator>Hugo -- gohugo.io</generator>
88
<language>en</language>
9-
<lastBuildDate>Mon, 27 May 2024 00:00:00 +0000</lastBuildDate><atom:link href="http://localhost:1313/index.xml" rel="self" type="application/rss+xml" />
9+
<lastBuildDate>Sat, 14 Dec 2024 00:00:00 +0000</lastBuildDate><atom:link href="http://localhost:1313/index.xml" rel="self" type="application/rss+xml" />
10+
<item>
11+
<title>IPv6 prefix delegation on Mikrotik</title>
12+
<link>http://localhost:1313/posts/mikrotik-ipv6/</link>
13+
<pubDate>Sat, 14 Dec 2024 00:00:00 +0000</pubDate>
14+
15+
<guid>http://localhost:1313/posts/mikrotik-ipv6/</guid>
16+
<description>Mikrotik RouterOS config for IPv6 prefix delegation</description>
17+
<content:encoded><![CDATA[<h2 id="routeros-config">RouterOS config</h2>
18+
<div class="highlight"><div class="chroma">
19+
<table class="lntable"><tr><td class="lntd">
20+
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
21+
</span><span class="lnt"> 2
22+
</span><span class="lnt"> 3
23+
</span><span class="lnt"> 4
24+
</span><span class="lnt"> 5
25+
</span><span class="lnt"> 6
26+
</span><span class="lnt"> 7
27+
</span><span class="lnt"> 8
28+
</span><span class="lnt"> 9
29+
</span><span class="lnt">10
30+
</span><span class="lnt">11
31+
</span><span class="lnt">12
32+
</span><span class="lnt">13
33+
</span><span class="lnt">14
34+
</span><span class="lnt">15
35+
</span></code></pre></td>
36+
<td class="lntd">
37+
<pre tabindex="0" class="chroma"><code class="language-sh" data-lang="sh"><span class="line"><span class="cl"><span class="c1"># Configure interface group</span>
38+
</span></span><span class="line"><span class="cl">/interface list add <span class="nv">comment</span><span class="o">=</span><span class="s2">&#34;UPLINK to ISP&#34;</span> <span class="nv">name</span><span class="o">=</span>WAN
39+
</span></span><span class="line"><span class="cl">/interface list member add <span class="nv">comment</span><span class="o">=</span><span class="s2">&#34;WAN facing interface&#34;</span> <span class="nv">interface</span><span class="o">=</span>ether1 <span class="nv">list</span><span class="o">=</span>WAN
40+
</span></span><span class="line"><span class="cl">
41+
</span></span><span class="line"><span class="cl"><span class="c1"># Enable router-advertisement incoming from the ISP</span>
42+
</span></span><span class="line"><span class="cl">/ipv6 settings <span class="nb">set</span> accept-router-advertisements<span class="o">=</span>yes
43+
</span></span><span class="line"><span class="cl">
44+
</span></span><span class="line"><span class="cl"><span class="c1"># Request an IPv6 prefix over WAN interface; my ISP hands out a /56</span>
45+
</span></span><span class="line"><span class="cl">/ipv6 dhcp-client add add-default-route<span class="o">=</span>yes <span class="nv">interface</span><span class="o">=</span>ether1 pool-name<span class="o">=</span>delegation pool-prefix-length<span class="o">=</span><span class="m">56</span> prefix-hint<span class="o">=</span>::/56 <span class="nv">request</span><span class="o">=</span>address,prefix
46+
</span></span><span class="line"><span class="cl">
47+
</span></span><span class="line"><span class="cl"><span class="c1"># Only accept inbound router-advertisements on the WAN interface</span>
48+
</span></span><span class="line"><span class="cl">/ipv6 firewall filter add <span class="nv">action</span><span class="o">=</span>drop <span class="nv">chain</span><span class="o">=</span>input icmp-options<span class="o">=</span>134:0-255 in-interface-list<span class="o">=</span>!WAN <span class="nv">protocol</span><span class="o">=</span>icmpv6
49+
</span></span><span class="line"><span class="cl">
50+
</span></span><span class="line"><span class="cl"><span class="c1"># Allow prefix delegatation on WAN interface</span>
51+
</span></span><span class="line"><span class="cl">/ipv6 firewall filter add <span class="nv">action</span><span class="o">=</span>accept <span class="nv">chain</span><span class="o">=</span>input <span class="nv">comment</span><span class="o">=</span><span class="s2">&#34;accept DHCPv6-Client prefix delegation.&#34;</span> dst-port<span class="o">=</span><span class="m">546</span> <span class="nv">protocol</span><span class="o">=</span>udp src-address<span class="o">=</span>fe80::/10
52+
</span></span></code></pre></td></tr></table>
53+
</div>
54+
</div>]]></content:encoded>
55+
</item>
56+
1057
<item>
1158
<title>Say goodbye to boilerplate code</title>
1259
<link>http://localhost:1313/posts/my-cookiecutter/</link>
@@ -18,17 +65,6 @@
1865
]]></content:encoded>
1966
</item>
2067

21-
<item>
22-
<title>IPv6 prefix delegation on Mikrotik</title>
23-
<link>http://localhost:1313/posts/mikrotik-ipv6/</link>
24-
<pubDate>Sun, 26 May 2024 00:00:00 +0000</pubDate>
25-
26-
<guid>http://localhost:1313/posts/mikrotik-ipv6/</guid>
27-
<description>RouterOS config to get IPv6 prefix delegation from your ISP</description>
28-
<content:encoded><![CDATA[<h2 id="config">Config</h2>
29-
]]></content:encoded>
30-
</item>
31-
3268
<item>
3369
<title>My development environment</title>
3470
<link>http://localhost:1313/posts/my-dev-env/</link>

‎public/posts/index.html

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
<!doctype html><html lang=en dir=auto><head><script src="/livereload.js?mindelay=10&amp;v=2&amp;port=1313&amp;path=livereload" data-no-instant defer></script><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Posts | netops2devops</title><meta name=keywords content><meta name=description content="Posts - netops2devops"><meta name=author content="Kapil Agrawal"><link rel=canonical href=http://localhost:1313/posts/><link crossorigin=anonymous href=/assets/css/stylesheet.min.d1687d10e64e13dbbdcf0fb91c3e6fbfcb11296ada6011568902ae90b8552e41.css integrity="sha256-0Wh9EOZOE9u9zw+5HD5vv8sRKWraYBFWiQKukLhVLkE=" rel="preload stylesheet" as=style><link rel=icon href=http://localhost:1313/favicon.ico><link rel=apple-touch-icon href=http://localhost:1313/apple-touch-icon.png><link rel=alternate type=application/rss+xml href=http://localhost:1313/posts/index.xml><link rel=alternate hreflang=en href=http://localhost:1313/posts/><meta name=twitter:card content="summary"><meta name=twitter:title content="Posts | netops2devops"><meta name=twitter:description content="All things networking, systems, software and security related"><meta property="og:title" content="Posts | netops2devops"><meta property="og:description" content="All things networking, systems, software and security related"><meta property="og:type" content="website"><meta property="og:url" content="http://localhost:1313/posts/"><meta property="og:image" content="http://localhost:1313/%3Clink%20or%20path%20of%20image%20for%20opengraph,%20twitter-cards%3E"><meta property="og:site_name" content="netops2devops"><script type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Posts","item":"http://localhost:1313/posts/"}]}</script><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary-bg:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51)}.list-page{background:var(--theme)}.list-page:not(.dark)::-webkit-scrollbar-track{background:0 0}.list-page:not(.dark)::-webkit-scrollbar-thumb{border-color:var(--theme)}}</style></noscript></head><body class="list-page type-posts kind-section layout-" id=top><script data-no-instant>function switchTheme(e){switch(e){case"light":document.body.classList.remove("dark");break;case"dark":document.body.classList.add("dark");break;default:window.matchMedia("(prefers-color-scheme: dark)").matches&&document.body.classList.add("dark")}}function isDarkTheme(){return document.body.className.includes("dark")}function getPrefTheme(){return localStorage.getItem("pref-theme")}function setPrefTheme(e){switchTheme(e),localStorage.setItem("pref-theme",e)}const toggleThemeCallbacks={};toggleThemeCallbacks.main=e=>{setPrefTheme(e?"light":"dark")},window.addEventListener("toggle-theme",function(){const e=isDarkTheme();for(const t in toggleThemeCallbacks)toggleThemeCallbacks[t](e)});function toggleThemeListener(){window.dispatchEvent(new CustomEvent("toggle-theme"))}</script><script>(function(){const t="auto",e=getPrefTheme(),n=e||t;switchTheme(n)})()</script><header class=header><nav class=nav><div class=logo><a href=http://localhost:1313/ accesskey=h title="netops2devops (Alt + H)">netops2devops</a>
22
<span class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)">
33
<svg id="moon" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
4-
<svg id="sun" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></span></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=Posts class=active>Posts</a></li><li><a href=http://localhost:1313/search/ title="Search (Alt + /)" data-no-instant accesskey=/>Search</a></li><li><a href=http://localhost:1313/tags/ title=Tags>Tags</a></li><li><a href=http://localhost:1313/archives/ title=Archive>Archive</a></li><li><a href=http://localhost:1313/about/ title=About>About</a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=http://localhost:1313/>Home</a></div><h1>Posts</h1><div class=inline-links><span><a href=http://localhost:1313/posts/index.xml target=_blank>RSS</a></span></div></header><article class=post-entry><header class=entry-header><h2>Say goodbye to boilerplate code</h2></header><section class=entry-content><p>Using cookiecutter & cruft to generate barebones project template</p></section><footer class=entry-footer><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
5-
<span>May 27, 2024</span></span><span class=meta-item>
4+
<svg id="sun" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></span></div><ul id=menu><li><a href=http://localhost:1313/posts/ title=Posts class=active>Posts</a></li><li><a href=http://localhost:1313/search/ title="Search (Alt + /)" data-no-instant accesskey=/>Search</a></li><li><a href=http://localhost:1313/tags/ title=Tags>Tags</a></li><li><a href=http://localhost:1313/archives/ title=Archive>Archive</a></li><li><a href=http://localhost:1313/about/ title=About>About</a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=http://localhost:1313/>Home</a></div><h1>Posts</h1><div class=inline-links><span><a href=http://localhost:1313/posts/index.xml target=_blank>RSS</a></span></div></header><article class=post-entry><header class=entry-header><h2>IPv6 prefix delegation on Mikrotik</h2></header><section class=entry-content><p>Mikrotik RouterOS config for IPv6 prefix delegation</p></section><footer class=entry-footer><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
5+
<span>December 14, 2024</span></span><span class=meta-item>
66
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-tag meta-icon" style="user-select:text"><path d="M20.59 13.41l-7.17 7.17a2 2 0 01-2.83.0L2 12V2h10l8.59 8.59a2 2 0 010 2.82z" style="user-select:text"/><line x1="7" y1="7" x2="7" y2="7" style="user-select:text"/></svg>
7-
<span class=post-tags><a href=http://localhost:1313/tags/cookiecutter/>Cookiecutter</a><a href=http://localhost:1313/tags/dev/>Dev</a></span></span><span class=meta-item>
7+
<span class=post-tags><a href=http://localhost:1313/tags/ipv6/>IPv6</a><a href=http://localhost:1313/tags/mikrotik/>Mikrotik</a><a href=http://localhost:1313/tags/networking/>Networking</a></span></span><span class=meta-item>
88
<svg width="24" height="24" viewBox="0 0 24 24" stroke="currentcolor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="12" r="9"/><polyline points="12 7 12 12 15 15"/></svg>
99
<span>1 min</span></span><span class=meta-item>
10-
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></footer><a class=entry-link aria-label="post link to Say goodbye to boilerplate code" href=http://localhost:1313/posts/my-cookiecutter/></a></article><article class=post-entry><header class=entry-header><h2>IPv6 prefix delegation on Mikrotik</h2></header><section class=entry-content><p>RouterOS config to get IPv6 prefix delegation from your ISP</p></section><footer class=entry-footer><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
11-
<span>May 26, 2024</span></span><span class=meta-item>
10+
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></footer><a class=entry-link aria-label="post link to IPv6 prefix delegation on Mikrotik" href=http://localhost:1313/posts/mikrotik-ipv6/></a></article><article class=post-entry><header class=entry-header><h2>Say goodbye to boilerplate code</h2></header><section class=entry-content><p>Using cookiecutter & cruft to generate barebones project template</p></section><footer class=entry-footer><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-calendar" style="user-select:text"><rect x="3" y="4" width="18" height="18" rx="2" ry="2" style="user-select:text"/><line x1="16" y1="2" x2="16" y2="6" style="user-select:text"/><line x1="8" y1="2" x2="8" y2="6" style="user-select:text"/><line x1="3" y1="10" x2="21" y2="10" style="user-select:text"/></svg>
11+
<span>May 27, 2024</span></span><span class=meta-item>
1212
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-tag meta-icon" style="user-select:text"><path d="M20.59 13.41l-7.17 7.17a2 2 0 01-2.83.0L2 12V2h10l8.59 8.59a2 2 0 010 2.82z" style="user-select:text"/><line x1="7" y1="7" x2="7" y2="7" style="user-select:text"/></svg>
13-
<span class=post-tags><a href=http://localhost:1313/tags/ipv6/>IPv6</a><a href=http://localhost:1313/tags/mikrotik/>Mikrotik</a><a href=http://localhost:1313/tags/networking/>Networking</a></span></span><span class=meta-item>
13+
<span class=post-tags><a href=http://localhost:1313/tags/cookiecutter/>Cookiecutter</a><a href=http://localhost:1313/tags/dev/>Dev</a></span></span><span class=meta-item>
1414
<svg width="24" height="24" viewBox="0 0 24 24" stroke="currentcolor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="12" r="9"/><polyline points="12 7 12 12 15 15"/></svg>
1515
<span>1 min</span></span><span class=meta-item>
16-
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></footer><a class=entry-link aria-label="post link to IPv6 prefix delegation on Mikrotik" href=http://localhost:1313/posts/mikrotik-ipv6/></a></article><article class=post-entry><header class=entry-header><h2>My development environment</h2></header><section class=entry-content><p>I use Apple M1 max for daily use. Majority of development happens here. Everyonce in a while when I need x86-64 arch for something I create a linux VM on my local proxmox server that I run at home.
16+
<svg width="24" height="24" viewBox="0 0 24 24" stroke="#000" stroke-width="1" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="7" r="4"/><path d="M6 21v-2a4 4 0 014-4h4a4 4 0 014 4v2"/></svg>Kapil Agrawal</span></footer><a class=entry-link aria-label="post link to Say goodbye to boilerplate code" href=http://localhost:1313/posts/my-cookiecutter/></a></article><article class=post-entry><header class=entry-header><h2>My development environment</h2></header><section class=entry-content><p>I use Apple M1 max for daily use. Majority of development happens here. Everyonce in a while when I need x86-64 arch for something I create a linux VM on my local proxmox server that I run at home.
1717
Tools I use Git VScode Docker Obsidian pre-commit 1 2 3 from pprint import pprint def show(json): pprint(json) 1 2 3 4 5 6 7 package main import fmt // main function func main(){ fmt.Println("Hello World") }</p></section><footer class=entry-footer><span class=meta-item><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-tag meta-icon" style="user-select:text"><path d="M20.59 13.41l-7.17 7.17a2 2 0 01-2.83.0L2 12V2h10l8.59 8.59a2 2 0 010 2.82z" style="user-select:text"/><line x1="7" y1="7" x2="7" y2="7" style="user-select:text"/></svg>
1818
<span class=post-tags><a href=http://localhost:1313/tags/dev/>Dev</a></span></span><span class=meta-item>
1919
<svg width="24" height="24" viewBox="0 0 24 24" stroke="currentcolor" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><circle cx="12" cy="12" r="9"/><polyline points="12 7 12 12 15 15"/></svg>

‎public/posts/index.xml

+48-12
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,54 @@
66
<description>Recent content in Posts on netops2devops</description>
77
<generator>Hugo -- gohugo.io</generator>
88
<language>en</language>
9-
<lastBuildDate>Mon, 27 May 2024 00:00:00 +0000</lastBuildDate><atom:link href="http://localhost:1313/posts/index.xml" rel="self" type="application/rss+xml" />
9+
<lastBuildDate>Sat, 14 Dec 2024 00:00:00 +0000</lastBuildDate><atom:link href="http://localhost:1313/posts/index.xml" rel="self" type="application/rss+xml" />
10+
<item>
11+
<title>IPv6 prefix delegation on Mikrotik</title>
12+
<link>http://localhost:1313/posts/mikrotik-ipv6/</link>
13+
<pubDate>Sat, 14 Dec 2024 00:00:00 +0000</pubDate>
14+
15+
<guid>http://localhost:1313/posts/mikrotik-ipv6/</guid>
16+
<description>Mikrotik RouterOS config for IPv6 prefix delegation</description>
17+
<content:encoded><![CDATA[<h2 id="routeros-config">RouterOS config</h2>
18+
<div class="highlight"><div class="chroma">
19+
<table class="lntable"><tr><td class="lntd">
20+
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
21+
</span><span class="lnt"> 2
22+
</span><span class="lnt"> 3
23+
</span><span class="lnt"> 4
24+
</span><span class="lnt"> 5
25+
</span><span class="lnt"> 6
26+
</span><span class="lnt"> 7
27+
</span><span class="lnt"> 8
28+
</span><span class="lnt"> 9
29+
</span><span class="lnt">10
30+
</span><span class="lnt">11
31+
</span><span class="lnt">12
32+
</span><span class="lnt">13
33+
</span><span class="lnt">14
34+
</span><span class="lnt">15
35+
</span></code></pre></td>
36+
<td class="lntd">
37+
<pre tabindex="0" class="chroma"><code class="language-sh" data-lang="sh"><span class="line"><span class="cl"><span class="c1"># Configure interface group</span>
38+
</span></span><span class="line"><span class="cl">/interface list add <span class="nv">comment</span><span class="o">=</span><span class="s2">&#34;UPLINK to ISP&#34;</span> <span class="nv">name</span><span class="o">=</span>WAN
39+
</span></span><span class="line"><span class="cl">/interface list member add <span class="nv">comment</span><span class="o">=</span><span class="s2">&#34;WAN facing interface&#34;</span> <span class="nv">interface</span><span class="o">=</span>ether1 <span class="nv">list</span><span class="o">=</span>WAN
40+
</span></span><span class="line"><span class="cl">
41+
</span></span><span class="line"><span class="cl"><span class="c1"># Enable router-advertisement incoming from the ISP</span>
42+
</span></span><span class="line"><span class="cl">/ipv6 settings <span class="nb">set</span> accept-router-advertisements<span class="o">=</span>yes
43+
</span></span><span class="line"><span class="cl">
44+
</span></span><span class="line"><span class="cl"><span class="c1"># Request an IPv6 prefix over WAN interface; my ISP hands out a /56</span>
45+
</span></span><span class="line"><span class="cl">/ipv6 dhcp-client add add-default-route<span class="o">=</span>yes <span class="nv">interface</span><span class="o">=</span>ether1 pool-name<span class="o">=</span>delegation pool-prefix-length<span class="o">=</span><span class="m">56</span> prefix-hint<span class="o">=</span>::/56 <span class="nv">request</span><span class="o">=</span>address,prefix
46+
</span></span><span class="line"><span class="cl">
47+
</span></span><span class="line"><span class="cl"><span class="c1"># Only accept inbound router-advertisements on the WAN interface</span>
48+
</span></span><span class="line"><span class="cl">/ipv6 firewall filter add <span class="nv">action</span><span class="o">=</span>drop <span class="nv">chain</span><span class="o">=</span>input icmp-options<span class="o">=</span>134:0-255 in-interface-list<span class="o">=</span>!WAN <span class="nv">protocol</span><span class="o">=</span>icmpv6
49+
</span></span><span class="line"><span class="cl">
50+
</span></span><span class="line"><span class="cl"><span class="c1"># Allow prefix delegatation on WAN interface</span>
51+
</span></span><span class="line"><span class="cl">/ipv6 firewall filter add <span class="nv">action</span><span class="o">=</span>accept <span class="nv">chain</span><span class="o">=</span>input <span class="nv">comment</span><span class="o">=</span><span class="s2">&#34;accept DHCPv6-Client prefix delegation.&#34;</span> dst-port<span class="o">=</span><span class="m">546</span> <span class="nv">protocol</span><span class="o">=</span>udp src-address<span class="o">=</span>fe80::/10
52+
</span></span></code></pre></td></tr></table>
53+
</div>
54+
</div>]]></content:encoded>
55+
</item>
56+
1057
<item>
1158
<title>Say goodbye to boilerplate code</title>
1259
<link>http://localhost:1313/posts/my-cookiecutter/</link>
@@ -18,17 +65,6 @@
1865
]]></content:encoded>
1966
</item>
2067

21-
<item>
22-
<title>IPv6 prefix delegation on Mikrotik</title>
23-
<link>http://localhost:1313/posts/mikrotik-ipv6/</link>
24-
<pubDate>Sun, 26 May 2024 00:00:00 +0000</pubDate>
25-
26-
<guid>http://localhost:1313/posts/mikrotik-ipv6/</guid>
27-
<description>RouterOS config to get IPv6 prefix delegation from your ISP</description>
28-
<content:encoded><![CDATA[<h2 id="config">Config</h2>
29-
]]></content:encoded>
30-
</item>
31-
3268
<item>
3369
<title>My development environment</title>
3470
<link>http://localhost:1313/posts/my-dev-env/</link>

‎public/posts/mikrotik-ipv6/index.html

+34-5
Large diffs are not rendered by default.

‎public/posts/my-dev-env/index.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@
148148
</span></span></span><span class=line><span class=cl><span class=c1></span><span class=kd>func</span> <span class=nf>main</span><span class=p>(){</span>
149149
</span></span><span class=line><span class=cl> <span class=nx>fmt</span><span class=p>.</span><span class=nf>Println</span><span class=p>(</span><span class=s>&#34;Hello World&#34;</span><span class=p>)</span>
150150
</span></span><span class=line><span class=cl><span class=p>}</span>
151-
</span></span></code></pre></td></tr></table></div></div></div><footer class=post-footer><nav class=paginav><a class=prev href=http://localhost:1313/posts/mikrotik-ipv6/><span class=title><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-arrow-left" style="user-select:text"><line x1="19" y1="12" x2="5" y2="12" style="user-select:text"/><polyline points="12 19 5 12 12 5" style="user-select:text"/></svg>&nbsp;Prev Page</span><br><span>IPv6 prefix delegation on Mikrotik</span></a></nav></footer><div class=comments-separator></div></article></main><footer class=footer><span>&copy; 2024 <a href=http://localhost:1313/>netops2devops</a></span><span style=display:inline-block;margin-left:1em>
151+
</span></span></code></pre></td></tr></table></div></div></div><footer class=post-footer><nav class=paginav><a class=prev href=http://localhost:1313/posts/my-cookiecutter/><span class=title><svg width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-arrow-left" style="user-select:text"><line x1="19" y1="12" x2="5" y2="12" style="user-select:text"/><polyline points="12 19 5 12 12 5" style="user-select:text"/></svg>&nbsp;Prev Page</span><br><span>Say goodbye to boilerplate code</span></a></nav></footer><div class=comments-separator></div></article></main><footer class=footer><span>&copy; 2024 <a href=http://localhost:1313/>netops2devops</a></span><span style=display:inline-block;margin-left:1em>
152152
<a href=https://creativecommons.org/licenses/by-sa/4.0/>CC BY-SA</a>
153153
</span><span style=display:inline-block;margin-left:1em>Powered by
154154
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &

0 commit comments

Comments
 (0)
Please sign in to comment.