Systemd-networkd maakt geen VLAN aan

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • Borromini
  • Registratie: Januari 2003
  • Niet online

Borromini

Mislukt misantroop

Topicstarter
Systematische documentatie lijkt er niet te zijn over networkd en VLAN's, maar met de blog posts die online te vinden zijn (en StackExchange etc) heb ik een configuratie bij elkaar gepuzzeld die zou moeten werken maar dat niet doet.

Ik heb ook de naam van het VLAN door eth0.30 vervangen, maar dat maakt geen verschil. Het leek er even op dat systemd zich in namen verslikte voor een VLAN ipv de traditionele notatie ($interface.$VLAN), maar dat blijkt niet zo te zijn.

OS is Debian Bullseye met kernel 5.4 (Armbian op een Odroid XU4, 5.4 is de meest recente stabiele kernel op deze hardware). Systemd-versie is 247. 8021q module is geladen.

Logs geven geen fouten ivm het VLAN, tips zijn welkom.

Configuratie:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/etc/systemd/network# head -n-0 3*
==> 30-dnsfilter_vlan.netdev <==
[NetDev]
Name=dnsfilter
Kind=vlan

[VLAN]
Id=30


==> 31-dnsfilter_vlan_link.network <==
[Match]
Name=eth0
Type=ether

[Network]
Description=Unconfigured physical Ethernet device
VLAN=dnsfilter
DHCP=no

# Dit zou allemaal niet nodig moeten zijn.
LinkLocalAddressing=no
LLDP=no
EmitLLDP=no
#IPv6AcceptRA=no
IPv6SendRA=no

==> 32-dnsfilter_vlan.network <==
[Match]
Name=dnsfilter
Type=vlan

[Network]
Description=DNS filter & ad blocker

[Address]
Address=10.0.30.7/24
#Gateway=10.0.30.1
#DNS=10.0.30.1


Systemd log rept met geen woord over het VLAN:

# systemctl status systemd-networkd
● systemd-networkd.service - Network Service
     Loaded: loaded (/lib/systemd/system/systemd-networkd.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-12-12 10:46:38 CET; 19min ago
TriggeredBy: ● systemd-networkd.socket
       Docs: man:systemd-networkd.service(8)
   Main PID: 351 (systemd-network)
     Status: "Processing requests..."
      Tasks: 1 (limit: 4448)
     Memory: 4.4M
        CPU: 1.125s
     CGroup: /system.slice/systemd-networkd.service
             └─351 /lib/systemd/systemd-networkd

dec 12 11:05:26 systemd-networkd[351]: veth55ee868: Lost carrier
dec 12 11:05:26 systemd-networkd[351]: veth55ee868: Link DOWN
dec 12 11:05:26 systemd-networkd[351]: rtnl: received neighbor for link '64' we don't know about, ignoring.
dec 12 11:05:26 systemd-networkd[351]: rtnl: received neighbor for link '64' we don't know about, ignoring.
dec 12 11:06:26 systemd-networkd[351]: veth16a7acf: Link UP
dec 12 11:06:27 systemd-networkd[351]: veth16a7acf: Gained carrier
dec 12 11:06:28 systemd-networkd[351]: veth16a7acf: Lost carrier
dec 12 11:06:28 systemd-networkd[351]: veth16a7acf: Link DOWN
dec 12 11:06:28 systemd-networkd[351]: rtnl: received neighbor for link '66' we don't know about, ignoring.
dec 12 11:06:28 systemd-networkd[351]: rtnl: received neighbor for link '66' we don't know about, ignoring.


Status van de interfaces volgens networkd - die ziet het VLAN evenmin:

/etc/systemd/network# networkctl list
IDX LINK            TYPE     OPERATIONAL SETUP
  1 lo              loopback carrier     unmanaged
  4 eth0            ether    routable    configured
  5 docker0         bridge   no-carrier  unmanaged
  6 br-39ca5a54745c bridge   routable    unmanaged
  8 vethedd420a     ether    degraded    unmanaged
 10 vethb7a90e6     ether    degraded    unmanaged

6 links listed.


In proc is ook geen enkel VLAN geregistreerd:

# cat /proc/net/vlan/config 
VLAN Dev name    | VLAN ID
Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD

Got Leenucks? | Debian Bookworm x86_64 / ARM | OpenWrt: Empower your router | Blogje

Beste antwoord (via Borromini op 13-12-2022 13:54)


  • SambalBij
  • Registratie: September 2000
  • Laatst online: 19:09

SambalBij

We're all MAD here

edit... Nevermind... Ik zat zelf niet goed te lezen... sorry :)

edit2:
Even beter gekeken en wat getest.

Heb even jouw config op een test-VM hier gezet; enige verschil is dat mijn ethernet interface ens224 heet en geen eth0.
Jouw config ziet er goed uit, en lijkt hier wel te werken?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
:/etc/systemd/network# head -n-0 3*
==> 30-dnsfilter_vlan.netdev <==
[NetDev]
Name=dnsfilter
Kind=vlan

[VLAN]
Id=30

==> 31-dnsfilter_vlan_link.network <==
[Match]
Name=ens224
Type=ether

[Network]
VLAN=dnsfilter
DHCP=no

LinkLocalAddressing=no
LLDP=no
EmitLLDP=no
IPv6AcceptRA=ro
IPv6SendRA=no

==> 32-dnsfilter_vlan.network <==
[Match]
Name=dnsfilter
Type=vlan

[Network]
Description=DNS filter & ad blocker

[Address]
Address=10.0.30.7/24


/etc/systemd/network# systemctl status systemd-networkd
● systemd-networkd.service - Network Service
     Loaded: loaded (/lib/systemd/system/systemd-networkd.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-12-12 22:23:05 CET; 3min 30s ago
TriggeredBy: ● systemd-networkd.socket
       Docs: man:systemd-networkd.service(8)
   Main PID: 263 (systemd-network)
     Status: "Processing requests..."
      Tasks: 1 (limit: 4678)
     Memory: 4.0M
        CPU: 45ms
     CGroup: /system.slice/systemd-networkd.service
             └─263 /lib/systemd/systemd-networkd

Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: Enumeration completed
Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: dnsfilter: netdev ready
Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: ens224: Link UP
Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: ens224: Gained carrier
Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: dnsfilter: Link UP
Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: dnsfilter: Gained carrier
Dec 12 22:23:06 aed-mf-01 systemd-networkd[263]: ens192: Link UP
Dec 12 22:23:06 aed-mf-01 systemd-networkd[263]: ens192: Gained carrier
Dec 12 22:23:07 aed-mf-01 systemd-networkd[263]: dnsfilter: Gained IPv6LL
Dec 12 22:23:07 aed-mf-01 systemd-networkd[263]: ens192: Gained IPv6LL

(ens192 is andere interface die gewoon via /etc/network/interfaces is ingesteld)

/etc/systemd/network# networkctl list
IDX LINK      TYPE     OPERATIONAL SETUP
  1 lo        loopback carrier     unmanaged
  2 ens192    ether    routable    unmanaged
  3 ens224    ether    carrier     configured
  4 dnsfilter vlan     routable    configured

4 links listed.


/etc/systemd/network# cat /proc/net/vlan/config
VLAN Dev name    | VLAN ID
Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD
dnsfilter      | 30  | ens224


/etc/systemd/network# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:50:56:a1:8f:70 brd ff:ff:ff:ff:ff:ff
    altname enp11s0
    inet 172.20.10.42/24 brd 172.20.10.255 scope global dynamic ens192
       valid_lft 28138sec preferred_lft 28138sec
3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:50:56:a1:1f:f2 brd ff:ff:ff:ff:ff:ff
    altname enp19s0
4: dnsfilter@ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:50:56:a1:1f:f2 brd ff:ff:ff:ff:ff:ff
    inet 10.0.30.7/24 brd 10.0.30.255 scope global dnsfilter
       valid_lft forever preferred_lft forever

Wat me wel opvalt is dat je eth0 interface ook geconfigureerd lijkt (in de networkctl list staat daar routable bij - Hij heeft dus een adres) terwijl je géén config in je 31-dnsfilter_vlan_link.network file hebt staan.

Heb je soms die eth0 in meerdere files geconfigureerd staan? Dan pakt ie maar een van de bestanden meende ik in mijn testen te zien net. Ik had eerder ook nog een 10-ens224.network met een address sectie, maar die pakte hij niet op. (Weet dus niet wat hij doet met meerdere files met een [Match] name=eth0)

Configureer het adres op de eth0 eens in die 31-dnsfilter_vlan_link.network file, door er een aparte [Address] sectie (voor je untagged vlan) bij te zetten?

[ Voor 203% gewijzigd door SambalBij op 12-12-2022 22:37 ]

Sometimes you just have to sit back, relax, and let the train wreck itself

Alle reacties


Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 20:33

Hero of Time

Moderator LNX

There is only one Legend

Wat is de reden dat je networkd wilt gebruiken, ipv het klassieke /etc/network/interfaces icm het vlan package?

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • Borromini
  • Registratie: Januari 2003
  • Niet online

Borromini

Mislukt misantroop

Topicstarter
Dat lijkt mij naast de kwestie, maar ik heb gemerkt dat networkd gracieuzer omgaat met kabels die er toch niet insteken etc. wat in headless setups (zoals deze bv.) toch wel van pas komt. Daarnaast heb ik al mijn clients op networkd overgezet.

Got Leenucks? | Debian Bookworm x86_64 / ARM | OpenWrt: Empower your router | Blogje


Acties:
  • 0 Henk 'm!

  • pennywiser
  • Registratie: November 2002
  • Laatst online: 12:11
Networkmanager doe je dat mee toch?

https://medium.com/@kbida...-using-nmcli-8cb79f45d3a6

Acties:
  • Beste antwoord
  • +1 Henk 'm!

  • SambalBij
  • Registratie: September 2000
  • Laatst online: 19:09

SambalBij

We're all MAD here

edit... Nevermind... Ik zat zelf niet goed te lezen... sorry :)

edit2:
Even beter gekeken en wat getest.

Heb even jouw config op een test-VM hier gezet; enige verschil is dat mijn ethernet interface ens224 heet en geen eth0.
Jouw config ziet er goed uit, en lijkt hier wel te werken?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
:/etc/systemd/network# head -n-0 3*
==> 30-dnsfilter_vlan.netdev <==
[NetDev]
Name=dnsfilter
Kind=vlan

[VLAN]
Id=30

==> 31-dnsfilter_vlan_link.network <==
[Match]
Name=ens224
Type=ether

[Network]
VLAN=dnsfilter
DHCP=no

LinkLocalAddressing=no
LLDP=no
EmitLLDP=no
IPv6AcceptRA=ro
IPv6SendRA=no

==> 32-dnsfilter_vlan.network <==
[Match]
Name=dnsfilter
Type=vlan

[Network]
Description=DNS filter & ad blocker

[Address]
Address=10.0.30.7/24


/etc/systemd/network# systemctl status systemd-networkd
● systemd-networkd.service - Network Service
     Loaded: loaded (/lib/systemd/system/systemd-networkd.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2022-12-12 22:23:05 CET; 3min 30s ago
TriggeredBy: ● systemd-networkd.socket
       Docs: man:systemd-networkd.service(8)
   Main PID: 263 (systemd-network)
     Status: "Processing requests..."
      Tasks: 1 (limit: 4678)
     Memory: 4.0M
        CPU: 45ms
     CGroup: /system.slice/systemd-networkd.service
             └─263 /lib/systemd/systemd-networkd

Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: Enumeration completed
Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: dnsfilter: netdev ready
Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: ens224: Link UP
Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: ens224: Gained carrier
Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: dnsfilter: Link UP
Dec 12 22:23:05 aed-mf-01 systemd-networkd[263]: dnsfilter: Gained carrier
Dec 12 22:23:06 aed-mf-01 systemd-networkd[263]: ens192: Link UP
Dec 12 22:23:06 aed-mf-01 systemd-networkd[263]: ens192: Gained carrier
Dec 12 22:23:07 aed-mf-01 systemd-networkd[263]: dnsfilter: Gained IPv6LL
Dec 12 22:23:07 aed-mf-01 systemd-networkd[263]: ens192: Gained IPv6LL

(ens192 is andere interface die gewoon via /etc/network/interfaces is ingesteld)

/etc/systemd/network# networkctl list
IDX LINK      TYPE     OPERATIONAL SETUP
  1 lo        loopback carrier     unmanaged
  2 ens192    ether    routable    unmanaged
  3 ens224    ether    carrier     configured
  4 dnsfilter vlan     routable    configured

4 links listed.


/etc/systemd/network# cat /proc/net/vlan/config
VLAN Dev name    | VLAN ID
Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD
dnsfilter      | 30  | ens224


/etc/systemd/network# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:50:56:a1:8f:70 brd ff:ff:ff:ff:ff:ff
    altname enp11s0
    inet 172.20.10.42/24 brd 172.20.10.255 scope global dynamic ens192
       valid_lft 28138sec preferred_lft 28138sec
3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:50:56:a1:1f:f2 brd ff:ff:ff:ff:ff:ff
    altname enp19s0
4: dnsfilter@ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:50:56:a1:1f:f2 brd ff:ff:ff:ff:ff:ff
    inet 10.0.30.7/24 brd 10.0.30.255 scope global dnsfilter
       valid_lft forever preferred_lft forever

Wat me wel opvalt is dat je eth0 interface ook geconfigureerd lijkt (in de networkctl list staat daar routable bij - Hij heeft dus een adres) terwijl je géén config in je 31-dnsfilter_vlan_link.network file hebt staan.

Heb je soms die eth0 in meerdere files geconfigureerd staan? Dan pakt ie maar een van de bestanden meende ik in mijn testen te zien net. Ik had eerder ook nog een 10-ens224.network met een address sectie, maar die pakte hij niet op. (Weet dus niet wat hij doet met meerdere files met een [Match] name=eth0)

Configureer het adres op de eth0 eens in die 31-dnsfilter_vlan_link.network file, door er een aparte [Address] sectie (voor je untagged vlan) bij te zetten?

[ Voor 203% gewijzigd door SambalBij op 12-12-2022 22:37 ]

Sometimes you just have to sit back, relax, and let the train wreck itself


Acties:
  • 0 Henk 'm!

  • Borromini
  • Registratie: Januari 2003
  • Niet online

Borromini

Mislukt misantroop

Topicstarter
Dat was iets wat ik niet duidelijk kon vinden, en ik heb dat evenmin vermeld, excuses. Eth0 wordt standaard inderdaad al gewoon geconfigureerd zonder expliciet VLAN.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# cat 10-r8153b.network 
[Match]
Name=eth0

[Network]
# IPv4
Address=10.0.0.7/24
Gateway=10.0.0.1
DNS=10.0.0.1
DNS=9.9.9.9

# IPv6
Address=2a02:xxxx:xxxx:xxxx::7/60
Address=fd7b:xxxx:xxxx::7/64
Gateway=fd7b:xxxx:xxxx::1
IPv6DuplicateAddressDetection=1


Hoe maak ik in 31-dnsfilter_vlan_link.network het onderscheid tussen de standaardconfiguratie (untagged eth0) en VLAN 30? Dat is me niet duidelijk. Ik veronderstel met een extra [network] sectie?

Edit: Ik heb het uitgevogeld. In het eerste .network bestand dien ik al de configuratie op te geven van de untagged interface. Ik heb de [Network] sectie hierboven er volledig aan toegevoegd. En in het tweede pas dat van de VLAN interface. Beetje verwarrend, maar het werkt.

Bedankt @SambalBij!

[ Voor 18% gewijzigd door Borromini op 13-12-2022 13:53 ]

Got Leenucks? | Debian Bookworm x86_64 / ARM | OpenWrt: Empower your router | Blogje

Pagina: 1