Bug 248103

Summary: Multicast valid (vlan)interfaces do not get vif "Invalid phyint address"
Product: Base System Reporter: Louis <louis.freebsd>
Component: kernAssignee: freebsd-bugs (Nobody) <bugs>
Status: New ---    
Severity: Affects Some People CC: louis.freebsd
Priority: --- Keywords: IntelNetworking, iflib, needs-patch
Version: 12.1-STABLEFlags: louis.freebsd: maintainer-feedback?
Hardware: amd64   
OS: Any   
See Also: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=248243
Attachments:
Description Flags
Actual interface config "ifconfig -a"
none
pfSense bootlog to show the pimd <> OS boot order none

Description Louis 2020-07-19 13:23:15 UTC
Hello,

I try to get PIMD running on latest pfsense development release based on 2.1. That does not work because the majority of my vlan's are not handled correctly by the FreeBSD "multicast kernel". 

The valid interfaces are rejected as "Invalid phyint address 'ix0.14'"

For information:
- my system has 1 em interface, 2 1G igb interfaces used as lagg, 2 10G ix interfaces (x520)
- all physical interfaces are carrying multiple vlans's
- all used interface drivers are based on iflib

Below a piece of pimd output showing the problem. In the "report" you can see that three vlans are treated the way in should .... five not ....

This bug might be related to #246629 (not sure) 


Louis


11:18:01.315 Getting vifs from kernel
11:18:01.315 Installing lagg0.10 (192.168.10.1 on subnet 192.168.10) as vif #0 - rate 0
11:18:01.315 Installing lagg0.26 (192.168.2.1 on subnet 192.168.2) as vif #1 - rate 0
11:18:01.315 Installing lagg0.13 (192.168.13.1 on subnet 192.168.13) as vif #2 - rate 0
11:18:01.315 Getting vifs from /var/etc/pimd/pimd.conf
11:18:01.315 Recommended querier timeout = Robustness x query-interval + response-time / 2 = 3 x 6 + 10 / 2 = 23
11:18:01.315 /var/etc/pimd/pimd.conf:8 - Invalid phyint address 'lagg0.16'
11:18:01.315 /var/etc/pimd/pimd.conf:9 - Invalid phyint address 'ix1.116'
11:18:01.315 /var/etc/pimd/pimd.conf:10 - Invalid phyint address 'ix0.14'
11:18:01.315 /var/etc/pimd/pimd.conf:12 - Invalid phyint address 'pppoe1'
11:18:01.315 /var/etc/pimd/pimd.conf:13 - Invalid Cand-RP address 'ix0.14', defaulting to 192.168.13.1
11:18:01.315 Local Cand-RP address 192.168.13.1, priority 0, interval 60 sec
11:18:01.315 Local static RP: 192.168.14.15, group 224.0.0.0/4
11:18:01.315 Local static RP: 169.254.0.1, group 232.0.0.0/8
Comment 1 Louis 2020-07-20 17:22:46 UTC
Extra information:

- Switching off the pimd "register_vif" does crash FreeBSD 
- Switching off and on some other (vlan) does trigger something. It does **not** solve the vif issue, however it does start some multicast routing.

Louis
Comment 2 Louis 2020-07-25 12:56:51 UTC
Created attachment 216760 [details]
Actual interface config "ifconfig -a"

Hello,

I forgot to add the actual interface config "ifconfig -a". Here it is.

Louis
Comment 3 Louis 2020-07-25 13:58:27 UTC
Hello,

Since this needs to be solved, I did download the pimd sources and used dnGRep to search for the fault messages.

I did not find the exact fault message, however I did notice that
- "Allow enable phyint based on ifname or address"
- and then I realised that the error messages is saying Invalid ADDRESS where
the line shows an IFNAME .......

Could that perhaps, perhaps ... *do not know* be the cause of the problem !!!???

Louis
Comment 4 Louis 2020-07-31 12:02:49 UTC
Given this problem, I *can not use* PIMD which I need for streaming. Note that my system does have multiple vlan-interfaces based on fysical 1G, 10G and lagg interfaces.
Comment 5 Louis 2020-08-02 14:13:17 UTC
I added a pfSence bootlog, showing what is started when. This shows in which phase PIMD is started in conjunction with the start of the OS itself.

You can also see that PIMD is started (and stopped) multiple times. That is of course not correct, however a pfSence issue

I attached this log since there is a possible relation between the PIMD start behavior and the state of OS and interfaces at that particular moment.

It seems that interfaces needs to have an IP-assigned at the moment PIMD is starting, which is probably the case (but something to check).
Comment 6 Louis 2020-08-02 14:14:50 UTC
Created attachment 216957 [details]
pfSense bootlog to show the pimd <> OS boot order