admin管理员组

文章数量:1278787

I am running a couple of docker containers in a VM (Ubuntu 22.04.05 LTS). In the syslog, I see a lot of DHCPDISCOVER entries:

Feb 25 09:42:01 streamshell-prod dhclient[3528603]: No DHCPOFFERS received.
Feb 25 09:42:01 streamshell-prod dhclient[3528603]: No working leases in persistent database - sleeping.
Feb 25 09:42:01 streamshell-prod dhclient[3528603]: DHCPDISCOVER on veth1a286b1 to 255.255.255.255 port 67 interval 7 (xid=0x8bb16d69)
Feb 25 09:42:02 streamshell-prod dhclient[3528603]: DHCPDISCOVER on docker0 to 255.255.255.255 port 67 interval 9 (xid=0x8b66cb6c)
Feb 25 09:42:03 streamshell-prod dhclient[3528603]: DHCPDISCOVER on veth93bb6c9 to 255.255.255.255 port 67 interval 7 (xid=0xb9c97401)
Feb 25 09:42:03 streamshell-prod dhclient[3528603]: DHCPDISCOVER on vetha80e9f5 to 255.255.255.255 port 67 interval 7 (xid=0x8df0612b)

It seems like dhclient is asking for DHCP addresses for all my docker containers. I think I don't need this (unless it is some docker internal thing required for the containers to talk to each other). My containers are not directly exposed, but talk to a proxy. Is there a way to tell dhclient to stop this, even if it is maybe just a cosmetic issue?

The containers are started using the Python Docker API:

hostname = "mycontainer"
networkname = "mynetwork"
networking_config = client.api.create_networking_config({
    networkname: client.api.create_endpoint_config(
        aliases=[hostname]
    )
})
container = client.containers.run(
    self.docker_image, detach=True, network=settings.STREAMSHELL_DOCKER_NETWORK,
    networking_config=networking_config, hostname=hostname,
    links={hostname: None}, name=hostname)

Output from ip addr:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc fq_codel state UP group default qlen 1000
    link/ether fa:16:3e:56:c1:6d brd ff:ff:ff:ff:ff:ff
    altname enp0s3
    inet 10.254.1.32/24 brd 10.254.1.255 scope global dynamic ens3
       valid_lft 82694sec preferred_lft 82694sec
    inet6 fe80::f816:3eff:fe56:c16d/64 scope link
       valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1450 qdisc noqueue state DOWN group default
    link/ether 02:42:62:8c:97:6e brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever
4: br-7eedbf705e18: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue state UP group default
    link/ether 02:42:87:3f:06:1b brd ff:ff:ff:ff:ff:ff
    inet 172.18.0.1/16 brd 172.18.255.255 scope global br-7eedbf705e18
       valid_lft forever preferred_lft forever
    inet6 fe80::42:87ff:fe3f:61b/64 scope link
       valid_lft forever preferred_lft forever
6: veth21dbe56@if5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master br-7eedbf705e18 state UP group default
    link/ether 82:70:b5:a9:97:71 brd ff:ff:ff:ff:ff:ff link-netnsid 1
    inet6 fe80::8070:b5ff:fea9:9771/64 scope link
       valid_lft forever preferred_lft forever
8: veth03c24a9@if7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue master br-7eedbf705e18 state UP group default
    link/ether b6:c5:87:57:46:b5 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet6 fe80::b4c5:87ff:fe57:46b5/64 scope link
       valid_lft forever preferred_lft forever
[...]

本文标签: Stop dhclient from sending DHCP requests for docker containersStack Overflow