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
CACL updates cause caclmgrd to flush and rebuild host iptables rules from CONFIG_DB ACL state. The dhcp_server container startup script separately adds this rule directly to the kernel:
This rule is needed because dhcp_server uses Docker bridge networking and sends syslog traffic to the host through docker0, unlike host-networked containers.
Because the rule is not represented in CONFIG_DB and is not regenerated by caclmgrd, any CACL change removes the rule until dhcp_server is restarted.
files/build_templates/docker_image_ctl.j2: adds/removes the dhcp_server_syslog rule during dhcp_server start/stop.
src/sonic-host-services/scripts/caclmgrd: flushes/rebuilds host iptables when CACL configuration changes.
Steps to Reproduce
Verify the dhcp_server_syslog rule exists.
Add or update a CACL table in CONFIG_DB.
Check the dhcp_server_syslog rule again.
Restart dhcp_server and check the rule again.
Actual Behavior and Expected Behavior
Actual behavior: the dhcp_server_syslog iptables rule is removed after a CACL config update. It is restored only after restarting dhcp_server.
Expected behavior: CACL updates should not remove the dhcp_server syslog exception, or caclmgrd should regenerate/preserve it while rebuilding iptables.
Is it platform specific
generic
Importance or Severity
Critical
Description of the bug
CACL updates cause
caclmgrdto flush and rebuild hostiptablesrules fromCONFIG_DBACL state. Thedhcp_servercontainer startup script separately adds this rule directly to the kernel:This rule is needed because
dhcp_serveruses Docker bridge networking and sends syslog traffic to the host throughdocker0, unlike host-networked containers.Because the rule is not represented in
CONFIG_DBand is not regenerated bycaclmgrd, any CACL change removes the rule untildhcp_serveris restarted.Relevant public code paths:
files/build_templates/docker_image_ctl.j2: adds/removes thedhcp_server_syslogrule duringdhcp_serverstart/stop.src/sonic-host-services/scripts/caclmgrd: flushes/rebuilds host iptables when CACL configuration changes.Steps to Reproduce
dhcp_server_syslogrule exists.CONFIG_DB.dhcp_server_syslogrule again.dhcp_serverand check the rule again.Actual Behavior and Expected Behavior
Actual behavior: the
dhcp_server_syslogiptables rule is removed after a CACL config update. It is restored only after restartingdhcp_server.Expected behavior: CACL updates should not remove the
dhcp_serversyslog exception, orcaclmgrdshould regenerate/preserve it while rebuilding iptables.Relevant log output