@@ -133,13 +133,22 @@ func TestDataPathExclusiveENI(t *testing.T) {
133133 assert .Equal (t , cfg .MTU , hostVETHLink .Attrs ().MTU )
134134 assert .True (t , hostVETHLink .Attrs ().Flags & net .FlagUp != 0 )
135135
136- // ip 169.254.1.1/32
137- ok , err = FindIP (hostVETHLink , & terwayTypes.IPNetSet {
138- IPv4 : LinkIPNet ,
139- IPv6 : LinkIPNetv6 ,
140- })
136+ // no explicit IP assignment - should auto borrow IP
137+ addrs , err := netlink .AddrList (hostVETHLink , netlink .FAMILY_ALL )
141138 assert .NoError (t , err )
142- assert .True (t , ok )
139+ // Only link-local or auto-assigned addresses, no explicit IPv4/IPv6 from cfg.HostIPSet
140+ for _ , addr := range addrs {
141+ if addr .IP .IsLinkLocalUnicast () || addr .IP .IsLinkLocalMulticast () {
142+ continue
143+ }
144+ // Should not have explicit IPs assigned
145+ if cfg .HostIPSet != nil && cfg .HostIPSet .IPv4 != nil {
146+ assert .NotEqual (t , cfg .HostIPSet .IPv4 .IP .String (), addr .IP .String ())
147+ }
148+ if cfg .HostIPSet != nil && cfg .HostIPSet .IPv6 != nil {
149+ assert .NotEqual (t , cfg .HostIPSet .IPv6 .IP .String (), addr .IP .String ())
150+ }
151+ }
143152
144153 // route 169.10.0.10 dev hostVETH
145154 routes , err := netlink .RouteListFiltered (netlink .FAMILY_V4 , & netlink.Route {
@@ -347,13 +356,22 @@ func TestDataPathExclusiveENIMultiNetwork(t *testing.T) {
347356 assert .Equal (t , cfg .MTU , hostVETHLink .Attrs ().MTU )
348357 assert .True (t , hostVETHLink .Attrs ().Flags & net .FlagUp != 0 )
349358
350- // ip 169.254.1.1/32
351- ok , err = FindIP (hostVETHLink , & terwayTypes.IPNetSet {
352- IPv4 : LinkIPNet ,
353- IPv6 : LinkIPNetv6 ,
354- })
359+ // no explicit IP assignment - should auto borrow IP
360+ addrs , err := netlink .AddrList (hostVETHLink , netlink .FAMILY_ALL )
355361 assert .NoError (t , err )
356- assert .True (t , ok )
362+ // Only link-local or auto-assigned addresses, no explicit IPv4/IPv6 from cfg.HostIPSet
363+ for _ , addr := range addrs {
364+ if addr .IP .IsLinkLocalUnicast () || addr .IP .IsLinkLocalMulticast () {
365+ continue
366+ }
367+ // Should not have explicit IPs assigned
368+ if cfg .HostIPSet != nil && cfg .HostIPSet .IPv4 != nil {
369+ assert .NotEqual (t , cfg .HostIPSet .IPv4 .IP .String (), addr .IP .String ())
370+ }
371+ if cfg .HostIPSet != nil && cfg .HostIPSet .IPv6 != nil {
372+ assert .NotEqual (t , cfg .HostIPSet .IPv6 .IP .String (), addr .IP .String ())
373+ }
374+ }
357375
358376 // route 169.10.0.10 dev hostVETH
359377 routes , err := netlink .RouteListFiltered (netlink .FAMILY_V4 , & netlink.Route {
0 commit comments