ডকার ধারক থেকে কোনও আইভিভি 6 সংযোগ নেই


11

আমি ডকারে আইপিভি 6 সক্ষম করতে মারাত্মক সমস্যা করছি।

পরিবেশ

  • হোস্ট চালাচ্ছেন দেবিয়ান জেসি।
  • এটি ভার্চুয়াল সার্ভার (কেভিএম)।
  • eth0 এর ডাব্লু: x: y: z :: 1 এর মতো নেটওয়ার্কে w: xy: z :: / 64 এর মতো একটি স্থিতিযুক্তভাবে কনফিগার করা ঠিকানা রয়েছে, যা আমার হোস্টিং সংস্থা আমার জন্য বরাদ্দ করেছে।
  • আমার হোস্ট কোনও সমস্যা ছাড়াই আইপিভি 6 ব্যবহার করতে সক্ষম: বাইরের বিশ্বের পিং করা কাজ করে, একটি পাত্রে চলমান একটি ওয়েবসাইট (পোর্ট 80 হোস্টের কাছে আবদ্ধ: 80) আইপিভি 6 এর মাধ্যমে অ্যাক্সেসযোগ্য।

সমস্যা

আমি তবে ধারকগুলির মধ্যে থেকে বাইরের বিশ্বের অ্যাক্সেস করতে পারি না! আমার ডকার0 ব্রিজের নীচে প্যারামিটারগুলি দিয়ে ডকার পুনরায় চালু করার পরে কোনও আইপিভি 6 ঠিকানা নেই। কোনও রুট এবং গেটওয়ে নেই (আইপিভি 6 ঠিকানা ছাড়া কোনও অর্থ হয় না)।

আমার ডকার সেটআপ: ডকার এই পরামিতিগুলির সাথে DOCKER_OPTS এ শুরু হয়

DOCKER_OPTS="--dns 8.8.8.8 --dns 8.8.4.4 --ipv6 --fixed-cidr-v6=w:x:y:z:a::/80"

কিছু ipv6 হোস্ট কনফিগারেশন প্যারামিটার:

net.ipv6.conf.all.forwarding = 1
net.ipv6.conf.default.forwarding = 1

আমি নিজের তৈরি করা নেটওয়ার্কগুলির মধ্যে একটি এখানে:

root@wopr:~# docker network inspect wopr6
[
    {
        "Name": "wopr6",
        "Id": "ddc192d4af2a8edc809975e84cf3e4cb82c24d4cfe970dd8e3fc7d6ff31e20ee",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": true,
        "IPAM": {
            "Driver": "default",
            "Options": {},
            "Config": [
                {
                    "Subnet": "172.23.0.0/16",
                    "Gateway": "172.23.0.1/16"
                },
                {
                    "Subnet": "w:x:y:z:a:0:0:0/80",
                    "Gateway": "w:x:y:z:a::1"
                }
            ]
        },
        "Internal": false,
        "Containers": {
            "dff30ab1496a4c3689ad6da0837fdb6cf7ea1a5b32312116214313b5b14ed07e": {
                "Name": "happy_varahamihira",
                "EndpointID": "8cd4ed4b91d8421171ec8cc771bbe7b7d81f05dc9f4679f20c642c2e828ec475",
                "MacAddress": "02:42:ac:17:00:02",
                "IPv4Address": "172.23.0.2/16",
                "IPv6Address": "w:x:y:z:a::2/80"
            }
        },
        "Options": {},
        "Labels": {}
    }
]

ধারকটির ভিতরে থেকে এখানে কিছু তথ্য রয়েছে যা উপরে উল্লিখিত রয়েছে:

ঠিকানা

root@dff30ab1496a:/# ip -6 a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
332: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500
    inet6 2a03:4000:6:2158:a::2/80 scope global nodad
       valid_lft forever preferred_lft forever
    inet6 fe80::42:acff:fe17:2/64 scope link
       valid_lft forever preferred_lft forever

রুট

root@dff30ab1496a:/# ip -6 r
2a03:4000:6:2158:a::/80 dev eth0  proto kernel  metric 256
fe80::/64 dev eth0  proto kernel  metric 256
default via 2a03:4000:6:2158:a::1 dev eth0  metric 1024

পিং

PING ipv6.l.google.com (2a00:1450:4001:811::200e): 56 data bytes, id 0x0011 = 17
--- ipv6.l.google.com ping statistics ---
1 packets transmitted, 0 packets received, 100% packet loss

আমি কী মিস করছি?

উত্তর:


5

সুতরাং একটি উত্তরের জন্য দুই সপ্তাহ অপেক্ষা করার পরে এবং একটি অনুগ্রহ খোলার পরে আরও কয়েক ঘন্টা অনুসন্ধান করার পরে আমি সমাধানটি পেয়েছি।

  1. একটি নতুন আইপিভি 6 সক্ষম নেটওয়ার্ক স্থাপন করুন এবং আমার কাছে উপলব্ধ একটি সাবনেট বরাদ্দ করুন (আমার / 64 এর একটি / 80)

    docker network create --ipv6 --subnet=w:x:y:z:aaaa::/80 myfancynetwork
    

    এখন একটি ধারক শুরু করুন এবং এটিকে নতুন নেটওয়ার্কের সাথে সংযুক্ত করুন। এটির আইপি ঠিকানা। ধরা যাক এটি w: x: y: z: aaaa :: 5 এই উদাহরণে।

  2. প্রক্সি_অ্যান্ডপি সক্ষম করুন

    sysctl net.ipv6.conf.eth0.proxy_ndp=1
    

    অবিচ্ছিন্ন করতে আপনি এই সেটিংটি /etc/sysctl.conf এর মাধ্যমেও কনফিগার করতে পারেন।

  3. আমার রাউটারের নিকটবর্তী একাকীকরণ বার্তাগুলির প্রতিক্রিয়া জানাতে আমার হোস্টকে (আইপিভি 6 সক্ষম) করার জন্য প্রক্সি যুক্ত করুন (যেমন: "ওহে, যিনি হোস্টিং ডাব্লু: এক্স: ইয়: জেড: আএএএএ :: 5?") নেবার বিজ্ঞাপন বিজ্ঞাপনের বার্তা সহ "(যেটি হবে" আমার মত হও!").

    ip -6 neigh add proxy w:x:y:z:aaaa::5 dev eth0
    

    ndppd আপনাকে আপনার নেটওয়ার্কের যেকোন হোস্টকে স্বয়ংক্রিয়ভাবে বিজ্ঞাপন দিতে সহায়তা করতে পারে।

বাম, এটাই।


আপনি এটি ndppdস্বয়ংক্রিয় করতে ডিমন ইনস্টল করতে পারেন ।
মাইকেল হ্যাম্পটন

1
@ মিশেলহ্যাম্পটন: আমি ঠিক তাই বলেছিলাম।
lajuette
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.