Closed jeffmccune closed 4 years ago
/usr/lib/systemd/system/google-startup-scripts.service
already specifies After=google-instance-setup.service google-network-daemon.service
and yet dhclient eth1
executes in parallel with the startup-script policy routing behavior.
Next step is to trace through /usr/sbin/dhclient-script
and cause policy routing to be configured from /etc/dhcp/dhclient-exit-hooks.d/policy-routing.sh
. Need to identify the set of variables for when a lease is obtained.
Version 0.5.0 should fix this, next steps are to test it out with a rolling update.
Summary:
The configuration of policy routing is not reliable on boot. A new instance with incorrect policy routing results in packets forwarded out eth0 instead of eth1:
The TTL is exceed because a packet sent out eth0 is sent right back into eth0 by the Shared VPC static route.
The incorrect policy routing configuration is likely caused by a race between the google-network-daemon.service and the google-startup-scripts.service:
Next steps: