Unable to dedicate a IPv6 range to an account
- 主要语言
- Java
- 星标
- 3.1k
- 派生
- 1.4k
- 平均合并
- 6 天 19 小时
- 30 天内合并 PR
- 32
描述
### problem
Unable to dedicate a IPv6 range to an account
### versions
ACS 4.22.1
### The steps to reproduce the bug
1. Navigate to zone > physical network > Public > Add ip
Logs
```
2026-06-25 10:54:58,684 DEBUG [c.c.a.ApiServlet] (qtp253011924-21:[ctx-f5b9d62a]) (logid:323fbda0) ===START=== 10.0.3.251 -- POST
command=createVlanIpRange
response=json
ip6gateway=fc00:2024:9:7::1
ip6cidr=fc00:2024:9:7::/64
zoneId=d0fe7f90-1c42-4108-a827-33036dc5f715
vlan=vlan://566
account=ACSUser
domainid=6bd8edef-6ae7-11f1-bb1a-1e00320001e1
forvirtualnetwork=true
sessionkey=hCY97hOJycJ5R6B0K9d3zaAh7Hc
2026-06-25 10:54:58,684 DEBUG [c.c.a.ApiServlet] (qtp253011924-21:[ctx-f5b9d62a]) (logid:323fbda0) Two factor authentication is already verified for the user 2, so skipping
2026-06-25 10:54:58,688 DEBUG [c.c.a.ApiServer] (qtp253011924-21:[ctx-f5b9d62a, ctx-c0fa91c9]) (logid:323fbda0) CIDRs from which account 'Account [{"accountName":"admin","id":2,"uuid":"b487bfa1-6ae7-11f1-bb1a-1e00320001e1"}]' is allowed to perform API calls: 0.0.0.0/0,::/0
2026-06-25 10:54:58,690 INFO [o.a.c.a.DynamicRoleBasedAPIAccessChecker] (qtp253011924-21:[ctx-f5b9d62a, ctx-c0fa91c9]) (logid:323fbda0) Account for user id b4886908-6ae7-11f1-bb1a-1e00320001e1 is Root Admin or Domain Admin, all APIs are allowed.
2026-06-25 10:54:58,690 DEBUG [o.a.c.a.StaticRoleBasedAPIAccessChecker] (qtp253011924-21:[ctx-f5b9d62a, ctx-c0fa91c9]) (logid:323fbda0) RoleService is enabled. We will use it instead of StaticRoleBasedAPIAccessChecker.
2026-06-25 10:54:58,690 DEBUG [o.a.c.r.ApiRateLimitServiceImpl] (qtp253011924-21:[ctx-f5b9d62a, ctx-c0fa91c9]) (logid:323fbda0) API rate limiting is disabled. We will not use ApiRateLimitService.
2026-06-25 10:54:58,706 ERROR [c.c.a.ApiServer] (qtp253011924-21:[ctx-f5b9d62a, ctx-c0fa91c9]) (logid:323fbda0) unhandled exception executing api command: [Ljava.lang.String;@7003dba2 java.lang.NullPointerException: Cannot invoke "String.split(String)" because "ip" is null
at com.cloud.utils.net.NetUtils.ip2Long(NetUtils.java:395)
at com.cloud.configuration.ConfigurationManagerImpl.createVlanAndPublicIpRange(ConfigurationManagerImpl.java:5056)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:569)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at org.apache.cloudstack.network.contrail.management.EventUtils$EventInterceptor.invoke(EventUtils.java:109)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
at com.cloud.event.ActionEventInterceptor.invoke(ActionEventInterceptor.java:52)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:215)
at jdk.proxy3/jdk.proxy3.$Proxy154.createVlanAndPublicIpRange(Unknown Source)
```
...
### What to do about it?
Admin user should be able to dedicate the ipv6 range to an account
贡献指南
调研方向
从 NetUtils.java 的 ip2Long 和 ConfigurationManagerImpl.java 的 createVlanAndPublicIpRange 开始,按照复现步骤中显示的 createVlanIpRange API 请求进行操作。使用提供的 IPv6 网关、CIDR、区域、VLAN 和账户值进行复现,然后验证管理员可以在不出现空指针异常的情况下专用 IPv6 范围。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- cloud, networking
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 冷清
- 描述清晰度
- 基本清楚
- 新手友好度
- 65/100