@jschlatow
Thanks for the welcome! Hoping to in-time make Genode/Sculpt become a full and superior daily driver replacement for Qubes OS. 
Been tinkering with the nic_router
as prescribed, but am still not getting the wired network connection to work.
The nic_router
is quite complex to grasp for simply getting a basic manual network connection setup, and I feel somewhat lost in looking through the README
, but I’m at least glad to be getting exposed to some deeper configuration parts of Genode/Sculpt on my first day for future educational and skill purposes!
Static IP Troubleshooting:
I first generate a default /config/managed/nic_router
file by clicking to enable the Network from Off
to Wired
. Then, after copying, editing, and saving (:wq
) to the new /config/nic_router
file within the ram fs
component using vim
, and then testing internet by trying to install nano3d
from the Presets
, I get the following network connection errors for the ‘nano3d’ install:
In lower left corner notification, I see:
Diagnostics
network needed for installation
In /report/log
, I see:
tail -n 1 /report/log
[leitzentrale -> manager] genodelabs/pkg/sticks_blue_backdrop/2025-04-28 incomplete or missing
I made the following line changes/additions to the default /config/nic_router
file:
<domain name="uplink" interface="192.168.1.101/24" gateway="192.168.1.1">
and
<dhcp-server ip_first="10.0.1.2" ip_last="10.0.1.200" dns_config_from="uplink"/>
<dns-server ip="1.1.1.1"/>
</dhcp-server>
Here is a fully retyped copy of my edited/modified /config/nic_router
file:
<config verbose_domain_state="yes">
<report interval_sec="5" bytes="yes" config="yes" config_triggers="yes"/>
<default-policy domain="default"/>
<policy label_prefix="nic -> " domain="uplink"/>
<domain name="uplink" interface="192.168.1.101/24" gateway="192.168.1.1">
<nat domain="default" tcp-ports="1000" udp-ports="1000" icmp-ids="1000"/>
<tcp-forward port="80" domain="http" to="10.0.80.2"/>
<tcp-forward port="23" domain="telnet" to="10.0.23.2"/>
<tcp-forward port="9999" domain="gdb" to="10.0.99.2"/>
<tcp-forward port="5900" domain="vnc" to="10.0.59.2"/>
</domain>
<domain name="default" interface="10.0.1.1/24">
<dhcp-server ip_first="10.0.1.2" ip_last="10.0.1.200" dns_config_from="uplink"/>
<dns-server ip="1.1.1.1"/>
</dhcp-server>
<tcp dst="0.0.0.0/0">
<permit-any domain="uplink"/>
</tcp>
<udp dst="0.0.0.0/0">
<permit-any domain="uplink"/>
</udp>
<icmp dst="0.0.0.0/0" domain="uplink"/>
</domain>
<policy label="http" domain="http"/>
<domain name="http" interface="10.0.80.1/24">
<dhcp-server ip_first="10.0.80.2" ip_last="10.0.80.2" dns_config_form="uplink"/>
</domain>
<policy label="telnet" domain="telnet"/>
<domain name="telnet" interface="10.0.23.1/24">
<dhcp-server ip_first="10.0.23.2" ip_last="10.0.23.2" dns_config_form="uplink"/>
</domain>
<policy label="gdb" domain="gdb"/>
<domain name="gdb" interface="10.0.99.1/24">
<dhcp-server ip_first="10.0.99.2" ip_last="10.0.99.2" dns_config_form="uplink"/>
</domain>
<policy label="vnc" domain="vnc"/>
<domain name="vnc" interface="10.0.59.1/24">
<dhcp-server ip_first="10.0.59.2" ip_last="10.0.59.2" dns_config_form="uplink"/>
</domain>
</config>
For reference, here is a fully retyped copy of my default/unmodified /config/managed/nic_router
file:
View File
<config verbose_domain_state="yes">
<report interval_sec="5" bytes="yes" config="yes" config_triggers="yes"/>
<default-policy domain="default"/>
<policy label_prefix="nic -> " domain="uplink"/>
<domain name="uplink">
<nat domain="default" tcp-ports="1000" udp-ports="1000" icmp-ids="1000"/>
<tcp-forward port="80" domain="http" to="10.0.80.2"/>
<tcp-forward port="23" domain="telnet" to="10.0.23.2"/>
<tcp-forward port="9999" domain="gdb" to="10.0.99.2"/>
<tcp-forward port="5900" domain="vnc" to="10.0.59.2"/>
</domain>
<domain name="default" interface="10.0.1.1/24">
<dhcp-server ip_first="10.0.1.2" ip_last="10.0.1.200" dns_config_from="uplink"/>
<tcp dst="0.0.0.0/0">
<permit-any domain="uplink"/>
</tcp>
<udp dst="0.0.0.0/0">
<permit-any domain="uplink"/>
</udp>
<icmp dst="0.0.0.0/0" domain="uplink"/>
</domain>
<policy label="http" domain="http"/>
<domain name="http" interface="10.0.80.1/24">
<dhcp-server ip_first="10.0.80.2" ip_last="10.0.80.2" dns_config_form="uplink"/>
</domain>
<policy label="telnet" domain="telnet"/>
<domain name="telnet" interface="10.0.23.1/24">
<dhcp-server ip_first="10.0.23.2" ip_last="10.0.23.2" dns_config_form="uplink"/>
</domain>
<policy label="gdb" domain="gdb"/>
<domain name="gdb" interface="10.0.99.1/24">
<dhcp-server ip_first="10.0.99.2" ip_last="10.0.99.2" dns_config_form="uplink"/>
</domain>
<policy label="vnc" domain="vnc"/>
<domain name="vnc" interface="10.0.59.1/24">
<dhcp-server ip_first="10.0.59.2" ip_last="10.0.59.2" dns_config_form="uplink"/>
</domain>
</config>
Here is a fully retyped copy of my /report/log
file after editing/saving /config/nic_router
and then re-connecting the network from Off
to Wired
again:
View Log
tail -n 50 /report/log
[runtime] child "nic_router"
[runtime] RAM quota: 9992K
[runtime] cap quota: 266
[runtime] ELF binary: nic_router
[runtime] priority: 2
[runtime] provides service Nic
[runtime] provides service Uplink
[runtime] child "nic"
[runtime] RAM quota: 20232K
[runtime] cap quota: 266
[runtime] ELF binary: nic
[runtime] priority: 2
[runtime -> nic_router] [uplink] dynamic IP config: none
[runtime -> nic_router] [uplink] NIC sessions: 0
[runtime -> nic_router] [default] static IP config: interface 10.0.1.1/24, gateway 0.0.0.0, P2P 0
[runtime -> nic_router] [default] NIC sessions: 0
[runtime -> nic_router] [http] static IP config: interface 10.0.80.1/24, gateway 0.0.0.0, P2P 0
[runtime -> nic_router] [http] NIC sessions: 0
[runtime -> nic_router] [telnet] static IP config: interface 10.0.23.1/24, gateway 0.0.0.0, P2P 0
[runtime -> nic_router] [telnet] NIC sessions: 0
[runtime -> nic_router] [gdb] static IP config: interface 10.0.99.1/24, gateway 0.0.0.0, P2P 0
[runtime -> nic_router] [gdb] NIC sessions: 0
[runtime -> nic_router] [vnc] static IP config: interface 10.0.59.1/24, gateway 0.0.0.0, P2P 0
[runtime -> nic_router] [vnc] NIC sessions: 0
[runtime] child "nic_router" announces service "Nic"
[runtime] child "nic_router" announces service "Uplink"
[runtime -> nic] SLUB: HWalign=64, Order=0-1, MinObjects=0, CPUs=1, Nodes=1
[runtime -> nic] NR_IRQS: 4352, nr_irqs: 4352, preallocated irqs: 256
[runtime -> nic] clocksource: dde_counter: mask: 0xffffffffffffff max_cycles: 0x1d854df40, max_idle_ns: 3526361616960 ns
[runtime -> nic] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[runtime -> nic] clocksource: Switched to clocksource dde_counter
[runtime -> nic] netdev: Intel(R) PRO/1000 Network Driver
[runtime -> nic] netdev: Copyright(c) 1999 - 2015 Intel Corporation.
[runtime -> nic] e1000e 00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[runtime -> nic] e1000e 00:19.0 00:19.0 (uninitialized): Failed to initialize MSI interrupts. Falling back to legacy interrupts.
[runtime -> nic] e1000e 00:19.0 eth0: (PCI Express:2.5GT/s:Width x1) [MAC ADDRESS REDACTED]
[runtime -> nic] e1000e 00:19.0 eth0: Intel(R) PRO/1000 Network Connection
[runtime -> nic] e1000e 00:19.0 eth0: MAC: 10, PHY: 11, PBA No: 1000FF-0FF
[runtime -> nic] e1000_main: Intel(R) PRO/1000 Network Driver
[runtime -> nic] e1000_main: Copyright (c) 1999-2006 Intel Corporation.
[runtime -> nic] sched_clock: Marking stable (358854000, 12268000)->(449441000, -78319000)
[runtime -> nic] e1000e 00:19.0 eth0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None
[runtime -> nic] create uplink for net device eth0
[runtime -> nic_router] [uplink] NIC sessions: 1
Potential troubleshooting thought:
Could there be a nic-client
node that needs to be added?
Also tried, without success, adding the following line as a child node of <config verbose_domain_state="yes">
:
<nic-client label="wired" domain="uplink"/>
Still not sure how to get this static IP network configuration working.