You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We observed quite a lot of "Received prefix with no router id" + "Couldn't parse packet" log messages in a relatively large babel network lately. This only affects interfaces with bird neighbours.
After some debugging I was able to identify that this problem is caused by messages sent by bird containing Update TLVs with metric 65535 (retraction), but without a preceding router-id. This causes babeld to ignore this update at
fprintf(stderr, "Received prefix with no router id.\n");
goto fail;
}
The babel-RFC doesn't seem to require Update TLVs to be preceeded by a router-id TLV, if the update is a retraction (metric == 0xffff).
It looks like babeld is handling this case correctly for wildcard retractions by excluding AE == 0 from this error check. This check probably also needs to exclude metric == 0xffff, but I haven't verified if that results in correct behavior.
The text was updated successfully, but these errors were encountered:
We observed quite a lot of "Received prefix with no router id" + "Couldn't parse packet" log messages in a relatively large babel network lately. This only affects interfaces with bird neighbours.
After some debugging I was able to identify that this problem is caused by messages sent by bird containing Update TLVs with metric 65535 (retraction), but without a preceding router-id. This causes babeld to ignore this update at
babeld/message.c
Lines 721 to 724 in aa29624
The babel-RFC doesn't seem to require Update TLVs to be preceeded by a router-id TLV, if the update is a retraction (
metric == 0xffff
).It looks like babeld is handling this case correctly for wildcard retractions by excluding
AE == 0
from this error check. This check probably also needs to excludemetric == 0xffff
, but I haven't verified if that results in correct behavior.The text was updated successfully, but these errors were encountered: