আইপিভি 6 পদ্ধতিটি ব্যবহার করতে অ্যাপট-গেট * নন * কনভেন্ড করুন


239

আমি যে আইএসপিটিতে কাজ করছি তা শেষ পর্যন্ত আইপিভি 6 ইন্টারনেটের সাথে সংযোগের প্রস্তুতি হিসাবে একটি অভ্যন্তরীণ আইপিভি 6 নেটওয়ার্ক স্থাপন করছে। ফলস্বরূপ, এই নেটওয়ার্কের বেশ কয়েকটি সার্ভার এখন চলার সময় ডিফল্টরূপে তার আইপিভি 6 ঠিকানার মাধ্যমে সিকিউরিটি.ডিবিয়ান.আর.আগ.এর সাথে সংযোগ স্থাপনের চেষ্টা করে apt-get updateএবং এর ফলে যখনই আমি যে কোনও ধরণের আপডেট ডাউনলোড করি তবে দীর্ঘ সময়সীমার জন্য অপেক্ষা করতে হয় ।

আইপিভি 4 কে অগ্রাধিকার দিতে বা আইপিভি 6 পুরোপুরি উপেক্ষা করার জন্য উপযুক্ত বলার উপায় আছে কি?


3
রাউটিং ব্যর্থতায় তাৎক্ষণিকভাবে ফিরে আসা উচিত নয়?
pjc50

7
না, এটি সম্পূর্ণভাবে সম্ভব যে তাদের অভ্যন্তরীণ নেটওয়ার্কের একাধিক সাবনেট (এবং হোস্টগুলির একটি আইপিভি 6 ডিফল্ট গেটওয়ে রয়েছে) এর মধ্যে রাউটিং রয়েছে তবে বাইরের বিশ্বের কোনও আইপিভি 6 সংযোগ নেই।
অ্যান্ড্রু মেডিকো

5
সেটআপ করার সম্ভবত একটি উপায় রয়েছে /etc/gai.confযাতে security.debian.orgএএএ রেকর্ডের আগে একটি রেকর্ড ফিরে আসে, তবে সেই ফাইলটিতে কী রাখব তা আমি ঠিক জানি না।
গিলস

3
@ অ্যান্ড্রুমেডিকো - তবে তাদের নেটওয়ার্কের ডিফল্ট গেটওয়েগুলি কি জানা উচিত নয় যে বাহ্যিক আইপিভি 6 সংযোগ নেই এবং প্রান্তে বহির্মুখী প্রচেষ্টাটি খুব দ্রুত প্রত্যাখ্যান করা উচিত? আমি মনে করি এখানে একটি নেটওয়ার্ক সমস্যা রয়েছে পাশাপাশি প্রশ্নটিও জিজ্ঞাসা করা হচ্ছে।
মাইকেল কোহেন

7
প্রান্ত রাউটার / ফায়ারওয়াল / যা কিছু সমস্যা সৃষ্টি করছে তা স্থির করা এটি হ্যান্ডেল করার "সেরা" উপায়। এটি কোনও আইসিএমপি গন্তব্য অপ্রাপ্য প্যাকেটটি ফেরত পাঠানো উচিত । এটি হয় হয় না, বা কিছু এটি ব্লক করছে। যেভাবেই হোক না কেন, সমস্যাটি আপনার নেটওয়ার্কের লোকদের কাছে জানানো উচিত।
মাইকেল হ্যাম্পটন

উত্তর:


319

যোগ -o Acquire::ForceIPv4=trueযখন চলমান apt-get

আপনি সেই সেটিংসটিকে অনড় রাখার চান শুধু তৈরি /etc/apt/apt.conf.d/99force-ipv4 এবং করা Acquire::ForceIPv4 "true";তার মধ্যে:

echo 'Acquire::ForceIPv4 "true";' | sudo tee /etc/apt/apt.conf.d/99force-ipv4

কনফিগার বিকল্পগুলি Acquire::ForceIPv4এবং Acquire::ForceIPv6সংস্করণ 0.9.7.9 ~ exp1 এ যুক্ত করা হয়েছে ( বাগ 611891 দেখুন ) যা উবুন্টু সৌসি (অক্টোবর 2013 এ প্রকাশিত) এবং দেবিয়ান জেসি (এপ্রিল 2015 এ প্রকাশিত) থেকে পাওয়া যায়।


7
এটিকে "গৃহীত" সরানো; মূল 30-পয়েন্টের উত্তরটি পুরোপুরি সঠিক, এটি আরও বিস্তৃত স্কেলে প্রযোজ্য হবে যখন এটি কেবল অ্যাপটি-গেটকে সীমাবদ্ধ করার বিকল্প সরবরাহ করে ।
শাদুর

আপনার উত্তরে সঠিকভাবে বর্ণনামূলক হন। -ও অর্জন করুন: ফোর্সআইপিভি 4 = সত্যটি হ'ল কোনও ব্যবহারকারীকে আইপিভি 4 ব্যবহার করার অনুমতি দেওয়ার জন্য আদেশটি যোগ করা হয়েছে
কেন্ড্রিক

কেন্দ্রিকের পরামর্শ অনুসারে উত্তর আপডেট হয়েছে
মোমোয়ায়

1
আমার বাকী থেকে বিচার করে আপনার apt.confএটি লিখতে হবে: Acquire::ForceIPv4 "true";(ডাবল উদ্ধৃতি সহ)
মীরাবিলোস

6
@ জ্যাব কারণ আপনার যদি ফাইলটিতে লেখার অ্যাক্সেস না থাকে sudo echo 'test' > fileতবে এটি কাজ করবে না কারণ ব্যবহারকারীর অনুমতি নিয়ে পুনর্নির্দেশটি কার্যকর করা হয়েছে
লেয়ার্টস

81

হিসাবে গিলেজ বলছেন , ব্যবহার gai.conf। নোট:

  1. এটি এপিটির চেয়ে অনেক নিম্ন স্তরে (ডিএনএস এবং আইপি নেটওয়ার্কিং) কাজ করে, সুতরাং এটি আপনার সমস্ত অ্যাপ্লিকেশন নেটওয়ার্ক কীভাবে পরিবর্তন করবে - কমপক্ষে, সমস্ত যা ব্যবহার করে getaddrinfo
  2. আপনার সম্পাদনার আগে আপনার gai.confএটি ব্যাক আপ করা উচিত এবং এটিও পড়তে হবে (চিন্তা করবেন না, এটি সংক্ষিপ্ত)। নীচের সম্পাদনাগুলি সম্ভবত আপনার বর্তমান ফাইলটিতে ইতিমধ্যে উল্লেখ করা হয়েছে; যদি বর্তমান ফাইলটি নীচের বর্ণিত চেয়ে আলাদা কিছু নির্দেশ করে তবে আপনার সম্ভবত সম্ভবত আপনার বর্তমান ফাইলটিতে কী পছন্দ করা উচিত।

তবে এটি যদি আপনি চান তবে এটি যা হয় (যা সম্ভবত এটি হয়) তবে চলুন। বলুন আমাদের দুটি হোস্ট রয়েছে www.he.netএবং www.ripe.net:

$ host www.he.net
www.he.net is an alias for he.net.
he.net has address 216.218.186.2
he.net has IPv6 address 2001:470:0:76::2

$ host www.ripe.net
www.ripe.net has address 193.0.6.139
www.ripe.net has IPv6 address 2001:67c:2e8:22::c100:68b

কেস 1: সমস্ত হোস্টের জন্য আইপিভি 4 পছন্দ করুন

সংযোজন /etc/gai.confনিম্নলিখিত লাইন:

precedence ::ffff:0:0/96  100

সম্পাদিত ফাইলটি সংরক্ষণ করার পরে (পুনরায় আরম্ভ করার দরকার নেই), আপনার telnetআইপিভি 4 ব্যবহার করে নেটওয়ার্কিং অ্যাপ্লিকেশনগুলি (যেমন, ) দেখতে হবে : যেমন,

$ telnet www.ripe.net 81
Trying 193.0.6.139...
^C
$ telnet www.he.net 81
Trying 216.218.186.2...

কেস 2: নির্দিষ্ট হোস্টের জন্য আইপিভি 6 পছন্দ করুন

যদি আমরা কেবল www.he.netবা তার নেটওয়ার্কের জন্য আইপিভি 6 পছন্দ করতে চান তবে আমরা তার আইপিভি 6 ঠিকানার কিছু অংশ, বা কেবল কিছু অংশের জন্য একটি মাস্ক / উপসর্গ যুক্ত করতে পারি /etc/gai.conf। উদাহরণস্বরূপ, নিম্নলিখিত লাইন:

precedence 2001:470::/32 100

(সম্পাদিত ফাইল সংরক্ষণের পরে) উত্পাদন করে

$ telnet www.ripe.net 81
Trying 193.0.6.139...
^C
$ telnet www.he.net 81
Trying 2001:470:0:76::2...
^C

কেস 3: নির্দিষ্ট হোস্টের জন্য আইপিভি 4 পছন্দ করুন

আমরা যদি মুখোশটি উল্টে দেব তবে কি বিপরীতটি সত্য হবে? @ গ্রুয়েস্টারের মতে, সংযোজন

precedence 2001:470::/96 100

তার জন্য আইপিভি 6 অক্ষম করার পরে তার পক্ষে কাজ করেছেন security.ubuntu.com(অন্যথায় এটি চিরকালের জন্য স্টল করে)।


আরো দেখুন:


উপরের লিঙ্কগুলি অদৃশ্য হয়ে গেলে সম্ভবত সামগ্রীর সংক্ষিপ্তসার?
ফাহিম মিঠা

সুতরাং, কোনও নির্দিষ্ট নামের জন্য বা কমপক্ষে একটি নির্দিষ্ট ঠিকানা (ব্যাপ্তি) এর জন্য আইপিভি 6 অক্ষম করার সিনট্যাক্সটি কী? আপনি যদি এটি আপনার পোস্টে যুক্ত করেন তবে এটি এখানে সেরা উত্তর হবে।
গিলস

ধন্যবাদ। আমি #security.debian.org has IPv6 address 2610:148:1f10:3::73 \n #security.debian.org has IPv6 address 2001:4f8:8:36::6 \n precedence 2001:4f8::/96 100 \n precedence 2610:148::/96 100 আমার /etc/gai.conf এ 2 টি লাইন যুক্ত করেছি এবং অ্যাপটি-গেট আপডেট এখন নিখুঁতভাবে কাজ করে।
উজ্জ্বল

10

আপনার সমস্ত হোস্টের প্রক্সি / ক্যাশে হিসাবে কাজ করতে আপনি একটি অতিরিক্ত মেশিনে অ্যাপ-ক্যাচার-এনজি সেটআপ করতে পারেন । আপনি কনফিগারেশনটি কেবলমাত্র নির্দিষ্ট হোস্ট ব্যবহার করতে বাধ্য করতে পারেন বা সেই একটি মেশিনে @bdp দ্বারা প্রস্তাবিত / ইত্যাদি / হোস্ট ট্রিক ব্যবহার করতে পারেন।

apt-get install apt-cacher-ng

একবার আপনি যখন অ্যাপ্লিকেশন-ক্যাশে-এনজি সেটআপ করে ফেলেন তখন আপনাকে কেবল /etc/apt/apt.conf.d/90httpproxy এ নিম্নলিখিত লাইনটি (আপনার ক্যাচারার মেশিনে নির্দেশিত আইপি ঠিকানা / হোস্টনামের সাহায্যে) ফেলে দিতে হবে

Acquire::http { Proxy "http://[192.168.1.254]:3142"; };

আমি ব্যান্ডউইথের ব্যবহার হ্রাস করতে এই সেটআপটি ব্যবহার করি তবে এটি আপনার সমস্যার সমাধান করতে পারে। দুর্ভাগ্যক্রমে আমি নিজেই অ্যাপ্লিকেশন প্রাপ্তির জন্য সরাসরি আইপিভি 6 লুকআপ নিষ্ক্রিয় করার উপায় সম্পর্কে অবগত নই।


এখনও একটি নিখুঁত সমাধান নয়, তবে এটি সম্ভবত এটি পেতে চলেছে good ধন্যবাদ।
শাদুর

5

আপনি ডিএনএস প্রক্সি সার্ভার সেটআপের মাধ্যমে এটি চারপাশে কাজ করতে পারেন যা ip6 টি প্রতিক্রিয়া ফেলেছিল।


আপনার স্থানীয় সমাধানকারী এখনও এএএএ রেকর্ড পাওয়ার চেষ্টা করবেন না? আর সময় কি শেষ?
মাইকেল 15'12

4

/etc/hostsপ্রাসঙ্গিক ঠিকানাগুলিকে ওভাররাইড করার ক্ষেত্রে কীভাবে একটি লাইন যুক্ত করবেন ? যেমন,

130.89.149.226  ftp.debian.org      
195.20.242.89   security.debian.org 

13
এই সমাধানটি আমি শেষ পর্যন্ত সংরক্ষণ করব যদি অন্য কোনও উপায় না হয়ে দেখা দেয়; আমি সত্যিই cluttering পছন্দ করি না /etc/hostsIP ঠিকানা আমি নিজেকে নিজের না সঙ্গে।
শাদুর

@ শাদুর হ্যাঁ, আমি আপনার বক্তব্য পুরোপুরি দেখতে পাচ্ছি :)
Badp

দ্রষ্টব্য: এগুলি ফ্লিপ করা দরকার, সুতরাং এটি আইপি এর পরে হোস্টনাম
মাইক টি

1

হাইজ্যাকিং পুরানো বিষয়, তবে সম্প্রতি একই সমস্যার মুখোমুখি। সুতরাং উপরোক্ত পরামর্শ এবং হোস্ট এবং হুইসের আউটপুট ভিত্তিতে :

# host security.debian.org
security.debian.org has address 212.211.132.250
security.debian.org has address 195.20.242.89
security.debian.org has address 212.211.132.32
security.debian.org has IPv6 address 2001:8d8:580:400:6564:a62:0:2
security.debian.org has IPv6 address 2001:a78:5:0:216:35ff:fe7f:be4f
security.debian.org has IPv6 address 2001:a78:5:1:216:35ff:fe7f:6ceb

সামান্য অন্যভাবে সমাধান সমস্যা - IPv6, নেটওয়ার্ক যা ধারণ প্রাধান্য নত security.debian.org মধ্যে /etc/gai.conf এ জুড়ুন :

# Make IPv6 for security.debian.org undesirable
precedence 2001:8d8:580::/48    5
precedence 2001:a78:5::/48      5

সুতরাং, IPv6, এখনও ছাড়া পছন্দ করা হয় security.debian.org


1

08 ই অক্টোবর, 2014 পর্যন্ত আমার একই সমস্যা ছিল, স্থানীয় নেটওয়ার্কে একটি প্রক্সি পিছনে ডেবিয়ান আপডেট করার চেষ্টা করছি। আশা করি এটি অন্যের সাথে প্রাসঙ্গিক হবে, আমি এখানে আমার প্রতিক্রিয়া পোস্ট করি। অন্যরা যেমন উল্লেখ করেছে, সম্পাদনা /etc/hostsএমন একটি বিষয় যা সম্পর্কে সতর্কতা অবলম্বন করা উচিত।

তবে ব্যক্তিগতভাবে আমি কেবল আপডেটটি করতে চেয়েছিলাম।

আপডেট করার সময় /etc/apt/sources.list এর সামগ্রী (আপডেটের আগে এটি আলাদা ছিল ..):

deb http://http.debian.net/debian/ testing main
deb-src http://http.debian.net/debian/ testing main

deb http://mirrors.kernel.org/debian/ wheezy main
deb-src http://mirrors.kernel.org/debian/ wheezy main

deb http://security.debian.org/ wheezy/updates main
deb-src http://security.debian.org/ wheezy/updates main

/Etc/apt/apt.conf এর সামগ্রী:

Acquire::http::proxy "http://192.168.1.10:7777/";
Acquire::http::Timeout "10";
Acquire::ftp::Timeout "10";

/ ইত্যাদি / হোস্টগুলিতে যোগ করুন:

#Workaround for making apt-get work (08-10-2014)
195.20.242.89 security.debian.org
130.89.148.12 ftp.debian.org

এখন, apt-get update ; apt-get upgradeরুট হিসাবে চালানো ভাল কাজ করেছে।

অন্যান্য উত্তরে উল্লিখিত হিসাবে, হোস্ট ফাইলটিতে fileোকানোর জন্য সঠিক আইপি পেতে ডোমেনে হোস্ট কমান্ডটি ব্যবহার করুন।

উদাহরণ:

$ host ftp.debian.org
ftp.debian.org has address 130.89.148.12

এটি সিস্টেমকে সফলভাবে আপডেট করেছে Debian GNU/Linux testing (jessie)। আপনি টেস্টিং স্টোরগুলি চালনা করতে না চাইতে পারেন, তবে কেবল এটি উত্স থেকে সরান। পরীক্ষামূলক ভাণ্ডারগুলি আপনাকে বেশ কয়েকটি প্যাকেজের সাম্প্রতিক আপডেট দেয় তবে স্থিতিশীল হিসাবে বিবেচিত হয় না।


আবার, hostsফাইলটি সংশোধন করা একটি অত্যন্ত সাবঅপটিমাল সমাধান।
শাদুর

0

আমি এটি করার আরও অনেক ভাল উপায় খুঁজে পেয়েছি। আপনার sources.listফাইলটি খুলুন এবং রেপোর হোস্টনামটি নোট করুন। তাদের IPv4 ঠিকানাগুলি পান , তারপরে sources.listহোস্টনামের পরিবর্তে IPv4 ঠিকানাগুলি দিয়ে সম্পাদনা করুন । অ্যাপিট-গেটের এখন আপনার নির্দিষ্ট করা আইপিভি 4 অ্যাড্রেসগুলি IPv6 কে বাইপাস করে সংগ্রহস্থলগুলির সাথে যোগাযোগ করা উচিত।

অসুবিধাগুলি হ'ল রেপোসের সাধারণত কিছুটা লোড ব্যালেন্সিং এবং / অথবা আইপি জিওলোকেশন সেটআপ থাকে যা এই পদ্ধতিটি অবশ্যই বাইপাস করে। তবে, কয়েক জন লোক এটি করছে কিনা তা বিবেচ্য নয়। যদি আপনি একটি আয়না ধীর গতিতে দেখেন তবে অন্য একটি রেপো আইপি ঠিকানা পাওয়ার চেষ্টা করুন (উদাহরণস্বরূপ, একটি অনলাইন পিং পরিষেবা ব্যবহার করে) এবং এটি ব্যবহার করুন।


2
এটি আসলেই একটি খারাপ সমাধান, কারণগুলির জন্য আপনি ইতিমধ্যে বর্ণনা করেছেন।
শাদুর

-4

আপনি যদি এটি কাজ করে তবে আপনি এটি চেষ্টা করতে পারেন

user@ubuntuvm:~$ sudo bash
root@ubuntuvm:~# echo 1 > /proc/sys/net/ipv6/conf/eth0/disable_ipv6 

-> আপনার ইন্টারফেসের নামটি প্রতিস্থাপন করুন


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