hannes changed the topic of #mirage to: MirageOS are OCaml unikernels - https://mirage.io - this channel is logged at http://irclog.whitequark.org/mirage/ - MirageOS 3.9.0 is released - happy hacking!
copy has quit [Quit: No Ping reply in 180 seconds.]
copy has joined #mirage
raboof has quit [Read error: Connection reset by peer]
raboof has joined #mirage
Haudegen has quit [Ping timeout: 268 seconds]
ahou has joined #mirage
eiji has quit [Ping timeout: 268 seconds]
reynir has quit [Ping timeout: 240 seconds]
reynir has joined #mirage
emp has quit [Quit: ZNC 1.8.2 - https://znc.in]
emp has joined #mirage
_whitelogger has joined #mirage
jnavila has joined #mirage
mort___ has joined #mirage
jnavila has quit [Ping timeout: 256 seconds]
_whitelogger has joined #mirage
Haudegen has joined #mirage
<ahou> hannes: heh. thanks for that pointer to solo5_xen.lds ... not surprised i didnt find it on my own.
<ahou> <3<3<3 the .h _behind_ it has a comment that literaly says ... * HERE BE DRAGONS.
<ahou> that should be mandatory for anything involving handcrafted linker scripts.
<hannes> ahou: did you find any dragons?
<ahou> not yet, even though i did skim xen/boot.S by now.
<ahou> "add a multiboot header to mirage binary" (aka b) still seems like the easier // more reasonable path.
<ahou> (as in, it is completely horrible, but just fighting tech dragons seems so much easier than dealing with maintainers of a GNU project...)
reynir has quit [Ping timeout: 240 seconds]
reynir has joined #mirage
<hannes> yes, iirc the virtio code of solo5 inserts a multiboot header..
<hannes> so there could be some code to take inspiration from..
<jpds> Is there any example code on how to build a simple firewall with mirage?
<hannes> jpds: well, there's https://github.com/mirage/qubes-mirage-firewall/ which is rather involved, eventually the NAT example unikernel is clearer https://github.com/mirage/mirage-nat/tree/master/example
mort___ has quit [Quit: Leaving.]
mort___ has joined #mirage
<ahou> hannes: a) yes, virtio bindings have multiboot code. b) the comments at the top describing the "initial situation" sound very similar. c) so another big thanks for the pointer.
<jpds> hannes: I'll take a look at the NAT unikernel, thanks - I run a bunch of nftables VMs I'm trying to replace
<ahou> jpds: if you are running these on qubes, the qubes-mirage-firewall may be a better start. ;)
<jpds> ahou: Not qubes
<ahou> jpds: *insert 2.5 pages of qubes propaganda here*
<jpds> ahou: I've been running qubes on my desktop for years
<hannes> jpds: it has very nice comments, if you struggle with something, please ask here or on the mailing list
<hannes> ahou: you're welcome. one day I'll be replaced by a bot ;)
<ahou> hannes: only if the bot has a search function that is better than "grep -r" ...
<jpds> Going to have to figure out IPv6, some of the networks behind the VMs have no v4 :(
<ahou> sounds exotic
<hannes> jpds: the good news is that we've upcoming ipv6 support in mirage (dual stack)
<hannes> the issue is some congestion on the release train track
<hannes> for a firewall, the ipv6 decoder + encoder (tcpip.ipv6) should be sufficient
<hannes> s/firewall/packet filter/
<jpds> Nice!
<hannes> i.e. no need to wait for the dual stack stuff
<jpds> Sorry, so the v6 support is there, and it's the dual-stack aspect that's upcoming?
<hannes> yes there is IPv6 support. well, it depends on the meaning of "v6 support".
<hannes> if you take a look into the tcpip library -- https://github.com/mirage/mirage-tcpip/tree/master/src/ipv6 -- the ipv6 module is around, and there's somewhere code to decode incoming ipv6 packets. now, a packet filter shouldn't need much host network stack logic, but more look at source/destination/protocol/source-port/destination-port, and this is doable afaict with the latest tcpip release
<hannes> but I'd recommend to first get your hands dirty with an ipv4 firewall ;)
Haudegen has quit [Ping timeout: 260 seconds]
mort___ has quit [Quit: Leaving.]
ehmry has quit [Read error: Connection reset by peer]
ehmry has joined #mirage