<!doctype html><htmllang=en-usdata-theme><head><metacharset=utf-8><metaname=HandheldFriendlycontent="True"><metaname=viewportcontent="width=device-width,initial-scale=1"><metaname=referrercontent="no-referrer-when-downgrade"><title>Projects - 1533B4dC0.de</title><metaname=descriptioncontent="INetMock INetMock started as an resource/container friendly alternative to INetSim. While working on a project we tried to reduce analysis complexity coming from ’noise’ in the network traffic recorded to a central INetSim cluster we were running. We decided to decentralize the internet simulation, put it into a container image and run directly on every host multiple times in virtual networks. Unfortunately INetSim has a relatively huge memory footprint (~1GB) which alone wouldn’t been a showstopper but in combination with a relatively long startup time I felt having something smaller could be beneficial so I started to implement a prototype in Go."><linkrel=icontype=image/x-iconhref=https://www.1533b4dc0.de/favicon.ico><linkrel=apple-touch-icon-precomposedhref=https://www.1533b4dc0.de/favicon.png><style>body{visibility:hidden;opacity:0}</style><noscript><style>body{visibility:visible;opacity:1}</style></noscript><linkrel=stylesheethref=https://www.1533b4dc0.de/css/style.min.e4dd69a921886f06d1a0e2bf835aa4fdced2d03b6f83804e6ae146caac8882bb.cssintegrity="sha256-5N1pqSGIbwbRoOK/g1qk/c7S0Dtvg4BOauFGyqyIgrs="><scriptsrc=https://www.1533b4dc0.de/js/script.min.a65afe903825231554d9b55b073eb144da4ccf2d2823b216dcbc6cc656c9de76.jstype=text/javascriptintegrity="sha256-plr+kDglIxVU2bVbBz6xRNpMzy0oI7IW3LxsxlbJ3nY="></script><metaproperty="og:title"content="Projects"><metaproperty="og:description"content="INetMock INetMock started as an resource/container friendly alternative to INetSim. While working on a project we tried to reduce analysis complexity coming from ’noise’ in the network traffic recorded to a central INetSim cluster we were running. We decided to decentralize the internet simulation, put it into a container image and run directly on every host multiple times in virtual networks. Unfortunately INetSim has a relatively huge memory footprint (~1GB) which alone wouldn’t been a showstopper but in combination with a relatively long startup time I felt having something smaller could be beneficial so I started to implement a prototype in Go."><metaproperty="og:type"content="article"><metaproperty="og:url"content="https://www.1533b4dc0.de/projects/"><metaproperty="article:section"content><metaname=twitter:cardcontent="summary"><metaname=twitter:titlecontent="Projects"><metaname=twitter:descriptioncontent="INetMock INetMock started as an resource/container friendly alternative to INetSim. While working on a project we tried to reduce analysis complexity coming from ’noise’ in the network traffic recorded to a central INetSim cluster we were running. We decided to decentralize the internet simulation, put it into a container image and run directly on every host multiple times in virtual networks. Unfortunately INetSim has a relatively huge memory footprint (~1GB) which alone wouldn’t been a showstopper but in combination with a relatively long startup time I felt having something smaller could be beneficial so I started to implement a prototype in Go."></head><body><aclass=skip-mainhref=#main>Skip to main content</a><divclass=container><headerclass=common-header><divclass=header-top><h1class=site-title><ahref=/>1533B4dC0.de</a></h1><ulclass=social-icons><li><ahref=https://github.com/baez90title=Githubrel=me><spanclass=inline-svg><svgxmlns="http://www.w3.org/2000/svg"viewBox="0 0 496 512"><pathfill="currentcolor"d="M165.9397.4c02-2.33.6-5.23.6-3.3.3-5.6-1.3-5.6-3.6.0-22.3-3.65.2-3.63-.35.61.35.63.6zm-31.1-4.5c-.721.34.34.34.92.615.6.06.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.22.3zm44.2-1.7c-2.9.7-4.92.6-4.64.9.322.93.35.92.62.9-.74.9-2.64.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.88C106.180113.3.0252c0
<span><ahref=#inetmock><svgviewBox="0 0 28 23"height="100%"width="19"xmlns="http://www.w3.org/2000/svg"><pathd="M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71"fill="none"stroke-linecap="round"stroke-miterlimit="10"stroke-width="2"/><pathd="M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71"fill="none"stroke-linecap="round"stroke-miterlimit="10"stroke-width="2"/></svg></a></span></h2><p><ahref=https://gitlab.com/inetmock/inetmock>INetMock</a> started as an resource/container friendly alternative to <ahref=https://www.inetsim.org/>INetSim</a>.
While working on a project we tried to reduce analysis complexity coming from ’noise’ in the network traffic recorded to a central INetSim cluster we were running.
Unfortunately INetSim has a relatively huge memory footprint (~1GB) which alone wouldn’t been a showstopper but in combination with a relatively long startup time I felt having something smaller could be beneficial so I started to implement a prototype in Go.</p><p>2 years later INetMock has grown to kind of a full router (supporting DNS and DHCP) with support for faking HTTP/s (direct or proxy requests) requests.
Furthermore it is able to record PCAP files for further analysis and it emits events for every handled request.</p><p>It comes with a descriptive configuration language (embedded in a YAML configuration) to setup the behavior of all components and to define health checks/integration tests to validate your configuration.</p><p>Apart from working as a router it can also be used e.g. for integration tests of HTTP APIs, DNS/DoT/DoH clients and most likely other things I haven’t even thought about.</p><h2id=goveal>Goveal
<span><ahref=#goveal><svgviewBox="0 0 28 23"height="100%"width="19"xmlns="http://www.w3.org/2000/svg"><pathd="M10 13a5 5 0 007.54.54l3-3a5 5 0 00-7.07-7.07l-1.72 1.71"fill="none"stroke-linecap="round"stroke-miterlimit="10"stroke-width="2"/><pathd="M14 11a5 5 0 00-7.54-.54l-3 3a5 5 0 007.07 7.07l1.71-1.71"fill="none"stroke-linecap="round"stroke-miterlimit="10"stroke-width="2"/></svg></a></span></h2><p><ahref=https://github.com/baez90/goveal>Goveal</a> is similar to <ahref=https://github.com/webpro/reveal-md>reveal-md</a> or previously <em>GitPitch</em> but obviously in Go.
So I decided to replace it with a small custom CLI rendering the markdown into a static HTML file and serving it as a local web server (basically).</p><p>Later on I refined it more and more.
Currently I’m working on a rewrite which adds e.g. 1st class support for <ahref=https://mermaid-js.github.io>mermaid-js</a> diagrams in slides.</p></div><divclass=post-info><aclass="post-hidden-url u-url"href=https://www.1533b4dc0.de/projects/>https://www.1533b4dc0.de/projects/</a>