Skip to content

Commit d9aa916

Browse files
committed
Configure IPv6 DNS server using router advertisements.
- This work-in-progress commit simply adds a router solicitation write and advertisement read to the DNS configuration call as a proof of concept, and to demonstrate the startup delay imposed by the process. - We need to figure out whether it's okay to make the container workload responsible for handling initial unavailability of DNS at startup. This would only occur when the workload has no IPv4 network stack. If this is the case, we can just put the RA processing and DNS update in the background. Otherwise, we need to implement a method to conditionally delay workload startup when it's necessary to wait for the IPv6 resolver address.
1 parent 69bc038 commit d9aa916

20 files changed

Lines changed: 2929 additions & 409 deletions

Package.resolved

Lines changed: 62 additions & 44 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Package.swift

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ let package = Package(
2929
.library(name: "ContainerizationEXT4", targets: ["ContainerizationEXT4"]),
3030
.library(name: "ContainerizationOCI", targets: ["ContainerizationOCI"]),
3131
.library(name: "ContainerizationNetlink", targets: ["ContainerizationNetlink"]),
32+
.library(name: "ContainerizationICMP", targets: ["ContainerizationICMP"]),
3233
.library(name: "ContainerizationIO", targets: ["ContainerizationIO"]),
3334
.library(name: "ContainerizationOS", targets: ["ContainerizationOS"]),
3435
.library(name: "ContainerizationExtras", targets: ["ContainerizationExtras"]),
@@ -196,6 +197,20 @@ let package = Package(
196197
.product(name: "Crypto", package: "swift-crypto"),
197198
]
198199
),
200+
.target(
201+
name: "ContainerizationICMP",
202+
dependencies: [
203+
.product(name: "Logging", package: "swift-log"),
204+
"ContainerizationExtras",
205+
]
206+
),
207+
.testTarget(
208+
name: "ContainerizationICMPTests",
209+
dependencies: [
210+
"ContainerizationExtras",
211+
"ContainerizationICMP",
212+
]
213+
),
199214
.target(
200215
name: "ContainerizationNetlink",
201216
dependencies: [

0 commit comments

Comments
 (0)