স্থানীয় নেটওয়ার্ক থেকে ফরোয়ার্ড করা পাবলিক আইপি ঠিকানায় লুপব্যাক - হেয়ারপিন NAT


45

এটি হেয়ারপিন NAT (লুপব্যাক এনএটি) সম্পর্কে একটি ক্যানোনিকাল প্রশ্ন

এই প্রশ্নের জেনেরিক ফর্মটি হ'ল:

আমাদের ক্লায়েন্ট, একটি সার্ভার এবং একটি NAT রাউটারের সাথে একটি নেটওয়ার্ক রয়েছে। রাউটারে সার্ভারে পোর্ট ফরওয়ার্ডিং রয়েছে তাই এর কিছু পরিষেবা বাহ্যিকভাবে উপলব্ধ। আমাদের বাহ্যিক আইপির দিকে নির্দেশ করছে ডিএনএস। স্থানীয় নেটওয়ার্ক ক্লায়েন্টরা সংযোগ করতে ব্যর্থ হয়েছে, তবে বাহ্যিক কাজ।

  • কেন এই ব্যর্থ হয়?
  • আমি কীভাবে একটি সংযুক্ত নামকরণের স্কিম তৈরি করতে পারি (স্থানীয়ভাবে এবং বাহ্যিকভাবে উভয়ভাবে কাজ করে এমন ডিএনএসের নাম)?

এই প্রশ্নটি উত্তর একাধিক অন্যান্য প্রশ্ন থেকে মার্জ করা হয়েছে। তারা মূলত ফ্রিবিএসডি, ডি-লিংক, মাইক্রোটিক এবং অন্যান্য সরঞ্জামাদি উল্লেখ করেছে। তারা সবাই একই সমস্যা সমাধানের চেষ্টা করছে।


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

উত্তর:


16

আপনি যা খুঁজছেন তাকে "হেয়ারপিন নাট" বলা হয়। বাহ্যিক ইন্টারফেসের জন্য নির্ধারিত আইপি ঠিকানার জন্য অভ্যন্তরীণ ইন্টারফেস থেকে অনুরোধগুলি নাটযুক্ত হওয়া উচিত যেন তারা বাহ্যিক দিকের ইন্টারফেস থেকে এসেছে।

আমার মোটামুটি কোনও ফ্রিবিএসডি পরিচিতি নেই, তবে ওপেনবিএসডি ( http://www.openbsd.org/faq/pf/rdr.html ) জন্য "পিএফ" ম্যানুয়ালটি পড়তে স্প্লিট-দিগন্ত ডিএনএসের প্রস্তাবিত সমাধানগুলি ব্যবহার করে, ডিএমজেড নেটওয়ার্ক, বা টিসিপি প্রক্সিং আমাকে বিশ্বাস করতে নেতৃত্ব দেয় যে "পিএফ" হেয়ারপিন নাটকে সমর্থন করে না।

আমি স্প্লিট-দিগন্ত ডিএনএসের পথে যাচ্ছি এবং ইউআরএলগুলিতে আইপি অ্যাড্রেসগুলি অভ্যন্তরীণভাবে ব্যবহার না করে বরং নামগুলি ব্যবহার করে দেখতে চাই।


একই সমস্যাটি সমাধান করার চেষ্টা করার সময় আমি এই থ্রেডটি পেরিয়ে এসেছি এবং এটি সত্য যে ফ্রিবিএসডি বাক্সের বাইরে হেয়ারপিন নাটকে সমর্থন করে না, অভ্যন্তরীণ -> বাহ্যিক -> অভ্যন্তরীণ ট্র্যাফিক পুনর্নির্দেশ এবং NAT এর উপায় রয়েছে।
ক্রিমসন-এগ্রেট

উদাহরণস্বরূপ: no nat on $int_if proto tcp from $int_if to $int_net , nat on $int_if proto tcp from $int_net to $hairpin_int port $hairpin_ports -> $int_if, rdr on $int_if proto tcp from $int_net to $ext_if port $hairpin_ports -> $hairpin_int
আরক্ত-বক

48

যেহেতু এটি হেয়ারপিন নাটকে ন্যাশনাল প্রশ্ন হিসাবে উন্নীত করা হয়েছে , আমি ভেবেছিলাম এটির একটি উত্তর সম্ভবত হওয়া উচিত যা বর্তমানে স্বীকৃত উত্তরটির চেয়ে সাধারণভাবে বৈধ ছিল, যা (যদিও দুর্দান্ত) বিশেষত ফ্রিবিএসডি-র সাথে সম্পর্কিত।

এই প্রশ্নটি আরএফসি 1918-সম্বোধিত আইপিভি 4 নেটওয়ার্কগুলিতে সার্ভারের সরবরাহিত পরিষেবার ক্ষেত্রে প্রযোজ্য, যা গেটওয়েতে গন্তব্য NAT (DNAT) প্রবর্তন করে বাহ্যিক ব্যবহারকারীদের জন্য উপলব্ধ করা হয়েছে। অভ্যন্তরীণ ব্যবহারকারীরা তখন বাহ্যিক ঠিকানার মাধ্যমে সেগুলি অ্যাক্সেস করার চেষ্টা করেন। তাদের প্যাকেট ক্লায়েন্ট থেকে গেটওয়ে ডিভাইসে চলে যায়, যা গন্তব্য ঠিকানাটি আবার লিখে দেয় এবং তাৎক্ষণিকভাবে এটিকে আবার অভ্যন্তরীণ নেটওয়ার্কে ইনজেক্ট করে। এটা তোলে গেটওয়ে যে নাম বৃদ্ধি দেয় এ প্যাকেট তোলে সম্পর্কে-টার্ন এই ধারালো হয় মাথার কাঁটা ন্যাট সঙ্গে, উপমা দ্বারা মাথার কাঁটা পালা

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

ক্লায়েন্ট এইভাবে একটি বাহ্যিক আইপি ঠিকানায় একটি প্যাকেট প্রেরণ করে , তবে একটি অভ্যন্তরীণ আইপি ঠিকানা থেকে উত্তর পেয়েছে । এটির কোনও ধারণা নেই যে দুটি প্যাকেট একই কথোপকথনের অংশ, সুতরাং কোনও কথোপকথন ঘটে না।

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

ক্লায়েন্ট মনে করে যে এটি কোনও বাহ্যিক সার্ভারের সাথে কথা বলছে। সার্ভারটি মনে করে এটি গেটওয়ে ডিভাইসে কথা বলছে। সব দলই খুশি। একটি চিত্র এখানে এ ক্ষেত্রে সহায়ক হতে পারে:

এখানে চিত্র বর্ণনা লিখুন

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

যথাযথ নেটওয়ার্কিং ডিভাইসগুলিকে সাধারণত কাজ করতে বলা যেতে পারে, তবে - কারণ তারা তাদের প্রশাসকদের দ্বিতীয় অনুমানের ব্যবসায়ের মধ্যে নেই - তাদের এটি করতে বলা হবে। লিনাক্স iptablesএইভাবে ডিএনএটি করতে ব্যবহার করে:

iptables -t nat -A PREROUTING  -p tcp --dport 80 -j DNAT --to-destination 192.168.3.11

যা HTTP পোর্টের জন্য একটি অভ্যন্তরীণ সার্ভারে সহজ ডিএনএটি সক্ষম করবে 192.168.3.11। তবে হেয়ারপিন নাটকে সক্ষম করার জন্য একটি নিয়মেরও প্রয়োজন যেমন:

iptables -t nat -A POSTROUTING -d 192.168.3.11 -p tcp --dport 80 -j MASQUERADE

মনে রাখবেন যে সঠিকভাবে কাজ করার জন্য এই নিয়মগুলি প্রাসঙ্গিক চেইনে সঠিক স্থানে থাকা দরকার এবং filterচেইনের সেটিংসের উপর নির্ভর করে নেটেড ট্র্যাফিক প্রবাহিত করার জন্য অতিরিক্ত নিয়মের প্রয়োজন হতে পারে। এই জাতীয় সমস্ত আলোচনা এই উত্তরের বাইরে নয়।

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


গেটওয়ে এবং সার্ভারের মধ্যে বিনিময় হওয়া প্যাকেটের ঠিকানাগুলির বিষয়ে আমি কিছুটা ভাবছি। সার্ভার রাউটারের সার্বজনীন আইপি ঠিকানা ক্লায়েন্টের আইপি হিসাবে দেখলে এটি আরও সামঞ্জস্যপূর্ণ হবে না? প্রযুক্তিগতভাবে উভয়ই কাজ করতে পারে, তবে অন্যান্য সার্ভারগুলি ক্লায়েন্টদের কীভাবে দেখে তার সাথে সামঞ্জস্য থাকতে, এটি সর্বজনীন আইপি ব্যবহার করতে হবে।
ক্যাস্পারড

1
আমি ধরে নিচ্ছি আপনি শেষ কেসটি "যথাযথ হেয়ারপিন নাট" উল্লেখ করছেন। গুরুত্বপূর্ণ বিষয়টি হ'ল ইনবাউন্ড প্যাকেটের উত্স ঠিকানাটি এমনভাবে পুনরায় লিখুন যাতে এটি রাউটারে ফিরে যায়, যা পরে ডিএনএটি এবং এসএনএটি উভয়কেই বিপরীত করতে পারে এবং এইভাবে সমস্যা এড়াতে পারে। রাউটার এটির জন্য এর কতগুলি ঠিকানা ব্যবহার করে তা হ'ল স্বাদের বিষয় এবং যদি আপনি এটিটি দিয়ে করছেন iptablesতবে অবশ্যই যদি আপনি এটি চয়ন করেন তবে আপনি কনফিগার করতে পারেন।
ম্যাডহ্যাটার

1
আমি অন্তর্ভুক্ত অনেক প্রশাসক বিভক্ত দিগন্ত ডিএনএসকে রোগের চেয়েও খারাপ একটি নিরাময় বলে মনে করেন। যদি অতিরিক্ত একটি এসএনএটি একেবারেই একটি রোগ বলা যায়। একটি স্প্লিট-ভিউ ডিএনএস মানুষকে বিভ্রান্ত করে যখন এটি রাউটারদের জীবনকে আরও সহজ করে তোলে। এই বিষয়টি আরও ভাল একটি পৃথক সার্ভারফল্ট প্রশ্ন / উত্তর দ্বারা পরিচালিত হবে।
kubanczyk

আমার উত্তর হেয়ারপিন নাট সম্পর্কে খুব বেশি। আমি একটি ক্যানোনিকাল "স্প্লিট-দিগন্ত ডিএনএস" প্রশ্ন খোলার পক্ষে মতামত দেখতে পাচ্ছি: পেশাদারদের মধ্যে এসএইচডিএনএসের ব্যবহার এবং ইস্যুগুলির জন্য উত্সর্গীকৃত একটি প্রশ্ন থাকা অন্তর্ভুক্ত রয়েছে তবে কনসটি হ'ল এই প্রশ্নটির সাথে ইতিমধ্যে অন্যান্য প্রচুর প্রশ্ন রয়েছে যা সম্পর্কিত এটি এতে একীভূত হয়ে গেছে, এটি আপনার প্রশ্নের ক্ষেত্রেও ঘটতে পারে। এটি যদি আমি হয় তবে আমি বিষয়টি মেটাতে উত্থাপন করব এবং andক্যমত্য চাইব। যদি এই জাতীয় কোনও প্রশ্ন লিখিত হয়, আমি এটিতে আপনার উত্তর পড়ার অপেক্ষায় রয়েছি!
ম্যাডহ্যাটার

@ ম্যাডহ্যাটার আমি iptables কমান্ডটি কোথায় লিখব? ক্লায়েন্ট বা গেটওয়ে বা সার্ভারে?
রকি বাল্বোয়

9

এখানে সমস্যাটি হ'ল, আপনার রাউটারটি আপনার অভ্যন্তরীণ ক্লায়েন্টের ঠিকানাটি NAT করে না। সুতরাং, টিসিপি হ্যান্ডশেক ব্যর্থ।

আসুন নিম্নলিখিত আইপি ধরে নেওয়া যাক

  • ক্লায়েন্ট: 192.168.1.3
  • সার্ভার: 192.168.1.2
  • রাউটার অভ্যন্তরীণ: 192.168.1
  • রাউটার বাহ্যিক: 123.123.123.1

এখানে কি ঘটছে তা হয়:

  1. ক্লায়েন্ট (192.168.1.3) আপনার বাহ্যিক আইপি, পোর্ট 80 (123.123.123.1:80) তে TCP-SYN প্রেরণ করে
  2. রাউটার পোর্ট ফরওয়ার্ডিং বিধি দেখে এবং উত্স আইপি (192.168.1.3) পরিবর্তন না করে প্যাকেটটি সার্ভারে (192.168.1.2:80) ফরোয়ার্ড করে
  3. ক্লায়েন্ট বাহ্যিক আইপি থেকে একটি SYN-ACK জন্য অপেক্ষা করে
  4. সার্ভার তার উত্তরটি সরাসরি ক্লায়েন্টকে ফেরত পাঠায়, কারণ এটি একই সাবনেটে রয়েছে। এটি রাউটারে প্যাকেটটি প্রেরণ করে না, যা NATকে বিপরীত করবে।
  5. ক্লায়েন্ট 123.123.123.1 এর পরিবর্তে 192.168.1.2 থেকে একটি এসওয়াইএন-এসিকি গ্রহণ করেছে। এবং এটি বাতিল।
  6. ক্লায়েন্ট এখনও 123.123.123.1 এবং সময়সীমা ছাড়িয়ে একটি SYN-ACK এর জন্য অপেক্ষা করে।

4

কেন সর্বত্র হার্ডকোডিং আইপি ঠিকানাগুলির পরিবর্তে স্প্লিট দিগন্ত ডিএনএস ব্যবহার করবেন না? আপনার এক্সট্রা ইয়োরডোমেনটি বাইরের 217.xxx এবং তারপরে 192.xxx নির্দেশ করবে।


1
আপনার যদি একটি মুহুর্ত থাকে, আপনি কি স্প্লিট-হরাইজন ডিএনএস কী, এটি কীভাবে কাজ করে এবং বড় ধরনের ত্রুটিগুলি সম্পর্কে প্রসারিত করতে পারেন। এটি এখন একটি প্রচলিত প্রশ্ন এবং আরও সম্পূর্ণ উত্তর পেয়ে ভালো লাগবে।
ক্রিস এস

2

যদি এটি একটি আসল ডি-লিংক রাউটার হয় (যেমন, ভার্জিন মিডিয়া থেকে রেভ। ডি / ফার্মওয়্যার সংস্করণ 1.00VG নয়) তবে আপনার চারপাশে কাজ করার জন্য সেটিংসটি সামঞ্জস্য করতে সক্ষম হওয়া উচিত। (তবে, অন্যান্য অনেক কারণে আমি পূর্ববর্তী পোস্টার ডিডি-ডাব্লুআরটি পরামর্শের সাথে একমত!)

  1. রাউটারের ওয়েব ইন্টারফেসে লগইন করুন
  2. শীর্ষে উন্নত ট্যাবে ক্লিক করুন
  3. বামদিকে ফায়ারওয়াল সেটিংস ট্যাবে ক্লিক করুন
  4. স্ক্রিনশটটি নীচের স্ক্রিনশটে প্রদর্শিত হিসাবে টিসিপি সমাপ্তি পয়েন্ট ফিল্টারিংয়ের অধীনে এন্ডপয়েন্ট ইন্ডিপেন্ডেন্ট রেডিও বোতামটি ক্লিক করুন (বা ডি-লিঙ্কের ওয়েবসাইটে রাউটার এমুলেটরটি দেখুন )
  5. পরিবর্তনগুলোর সংরক্ষন; তুমি করেছ

ডি-লিংক রাউটার ওয়েব ইউআই স্ক্রিনশট

এই স্ক্রিনশটটি রেভ। সি মডেলের; আপনার কিছুটা আলাদা হতে পারে।


2

সম্প্রতি একটি অনুরূপ প্রশ্নের উত্তর দিয়েছে: সিসকো স্ট্যাটিক নাট ল্যান পক্ষে কাজ করছে না এবং কেবল বুঝতে পেরেছে যে এটি একটি ক্যানোনিকাল প্রশ্ন। সুতরাং আমাকে সমাধানটির সংক্ষিপ্তসারটির অনুমতি দিন।

প্রথমত: NAT সম্পর্কে ভুলে যান (যদি আপনি পারেন) - প্রশ্নটি নাটি কনফিগার করার বিষয়ে মোটেও নয়। এটি ইন্টারনেট এবং ল্যান উভয় থেকেই NAT এর পিছনে রাখা সার্ভারটি অ্যাক্সেস করার বিষয়ে। দুটি ডিএনএস জোন নিযুক্ত করা একটি কার্যকর বিকল্প, তবে সর্বদা সমাধান নয়। তবে সমাধানটি বিদ্যমান এবং অবিশ্বাস্যরূপে সহজ (যদিও নিখুঁত নয়, সম্ভবত):

(1) সার্ভারে: 255.255.255.255 মাস্কের সাহায্যে সার্ভারের নেটওয়ার্ক ইন্টারফেসে গৌণ আইপি ঠিকানা হিসাবে পাবলিক আইপি ঠিকানা যুক্ত করুন (ওয়েব সার্ভিস বা আপনি সার্ভারে যা চান তা এই আইপি ঠিকানায়ও শোনা উচিত); সমস্ত আধুনিক অপারেটিং সিস্টেম আপনাকে এটি করার অনুমতি দেবে (বা এটি নির্ধারিত পাবলিক আইপি ঠিকানা সহ একটি লুপব্যাক ইন্টারফেস প্রাথমিক ইন্টারফেসে একটি গৌণ আইপি যুক্ত করার পরিবর্তে ব্যবহার করা যেতে পারে)।

(২) ল্যান হোস্টে: সর্বজনীন আইপি ঠিকানার জন্য একটি হোস্ট রুট যুক্ত করুন, উদাহরণস্বরূপ, উইন্ডোজ হোস্টগুলির জন্য নিম্নলিখিত কমান্ডটি ব্যবহার করুন: রুট -p যোগ করুন 203.0.113.130 মাস্ক 255.255.255.255 192.168.1.11 (আপনি ডিএইচসিপি ব্যবহার করতে পারেন " স্থিতিশীল রুট "রুটটি বিতরণের বিকল্প)। অথবা, যদি ক্লায়েন্ট এবং ইন্টারনেট-মুখী রাউটারের মধ্যে (ক) এল 3 সুইচ (এসএস) / রাউটার (গুলি) থাকে তবে এই হোস্ট রুটটি (এই) ইন্টারমিডিয়েট সুইচ (এসএস) / রাউটার (গুলি) কনফিগার করুন, না ক্লায়েন্টদের উপর।

টিসিপি ত্রি-মুখী হ্যান্ডশেক সম্পর্কিত যারা: এটি প্রস্তাবিত কনফিগারেশনে ঠিকঠাক কাজ করবে।

দয়া করে প্রতিক্রিয়া জানান (কমপক্ষে, ভোট)।


প্রয়োজনীয়তা # 2 এটি BYOD নেটওয়ার্কগুলিতে ভাল কাজ করে না ...
মাইকেল

1

আমি একই ধরণের সমস্যার সাথে তাদের দিগন্তকে আরও প্রশস্ত করতে আমার প্রশ্নের জবাব দেব।

আমি আমার আইএসপির সাথে যোগাযোগ করেছি এবং তাদের আমার সমস্যাগুলি সমাধান করার চেষ্টা করতে বলেছি। তারা আমাকে যে প্রস্তাব দিয়েছিল তা হ'ল সার্ভারের জন্য আর একটি সর্বজনীন আইপি ঠিকানা, এখন আমার কাছে ফ্রিবিএসডি এর ডানদিকে Wan পাশে স্থানীয় ট্র্যাফিক রয়েছে এবং আমরা সার্ভারের পাবলিক আইপিতে দ্রুত থ্রুপুট লোকাল ট্র্যাফিকের জন্য নির্দিষ্ট পাইপ তৈরি করেছি


2
এই সমাধানটি পেরিমিটার নেটওয়ার্ক বা ডিএমজেড প্রয়োগ করে এবং হেয়ারপিন নাট এবং স্প্লিট-হরাইজন ডিএনএস উভয়েরই একটি ভাল বিকল্প।
ক্রিস এস

1

প্রযুক্তিগত দিক থেকে এই সমস্যার সর্বোত্তম সমাধান হ'ল আপনার নেটওয়ার্কে IPv6 সক্ষম করা। যখন আইপিভি 6 সক্ষম হয় তখন আপনাকে আপনার ডোমেনের জন্য একটি এএএএ রেকর্ড তৈরি করতে হবে। বিদ্যমান একটি রেকর্ড রাখুন রাউটারের বাহ্যিক আইপিভি 4-কে নির্দেশ করে । সার্ভারের IPv6 ঠিকানার দিকে নির্দেশ করে একটি এএএএ রেকর্ড তৈরি করুন ।

আইটিভি 6-এর NAT এড়ানোর জন্য পর্যাপ্ত ঠিকানা রয়েছে, সুতরাং আইপিভি 6-এর জন্য আপনার হেয়ারপিন NAT দরকার হবে না। এবং একবার আপনি আইভিভি 6 সক্ষম করে এবং এএএএ রেকর্ড তৈরি করলে আরএফসি 8305 সমর্থনকারী কোনও ক্লায়েন্ট আইপিভি 4 এর আগে আইপিভি 6 চেষ্টা করবে। এর অর্থ আইপিভি 4 এর জন্য আপনার হেয়ারপিন NAT এর দরকার নেই, কারণ ক্লায়েন্টরা এটি ব্যবহার করবে না।

বহির্মুখী সংযোগের জন্য এবং আগত সংযোগগুলির জন্য পোর্ট ফরওয়ার্ডিংয়ের জন্য আপনার বিদ্যমান আইপিভি 4 NAT এর এখনও আপনার প্রয়োজন হবে যতক্ষণ না বিশ্বের বেশিরভাগ আইপিভি 6 সক্ষম করে না।

এটিও দ্রুত।

আইপিভি 6 ব্যবহার করা আপনাকে হেয়ারপিন নাটের চেয়ে আরও ভাল পারফরম্যান্স দেবে।

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

আইপিভি 6 দিয়ে আপনি NAT এড়ান, পরিবর্তে ক্লায়েন্ট এবং সার্ভারের মধ্যে স্যুইচের মাধ্যমে প্যাকেটগুলি সরাসরি প্রেরণ করা হয়। এর অর্থ একটি রাউন্ডট্রিপে আপনি সুইচটি দিয়ে পাসের সংখ্যা 4 থেকে কমিয়ে 2 এবং আপনি রাউটার দিয়ে 2 টি ট্রিপ এবং এ 4 টি অনুবাদগুলি রাউটারটি সম্পাদন করবেন would এটি আরও ভাল পারফরম্যান্সে অনুবাদ করে।

আপনি যদি রাউটারের মতো একই বাক্সে নির্মিত একটি সুইচ ব্যবহার করেন তবে এটি সত্য।

আইএসপি আইপিভি 6 না থাকলে কী হবে?

আপনি যদি এমন কোনও আইএসপি ব্যবহার করছেন যা আইপিভি 6 সমর্থন করে না তবে আমি আপনাকে প্রশ্ন করব যে আপনাকে সেই নেটওয়ার্কে সার্ভার হোস্ট করা উচিত কিনা। আইএসপি যদি বর্তমানে আইভিভি 6 সমর্থন না করে তবে করণীয় সম্পর্কে আমার পরামর্শ suggestions

প্রথমে আইএসপিটি বলুন যে আপনার আইপিভি 6 দরকার । এবং তাদের স্মরণ করিয়ে দিন যে আইপিভি 6 প্রোটোকলটি প্রায় 20 বছর ধরে তাই এটির সমর্থনে তারা দীর্ঘ মেয়াদে বহাল। আইএসপি যদি আপনাকে গুরুত্ব সহকারে নিতে না পারে তবে অন্য আইএসপিগুলি সন্ধান শুরু করুন।

আপনি যদি আইপিভি 6 সমর্থন সহ একটি আইএসপি খুঁজে পান তবে আপনি উভয় আইএসপি দিয়ে একটি স্থানান্তর সময়ের জন্য চালাতে পারেন। নতুন আইএসপিতে সংযুক্ত রাউটারে আপনি ল্যান পাশের আইপিভি 4 অক্ষম করতে পারেন এবং তারপরে উভয় রাউটারের ল্যান পাশগুলিকে একই স্যুইচটিতে সংযুক্ত করতে পারেন। আইপিভি 4 এবং আইপিভি 6 দুটি স্বতন্ত্র প্রোটোকল এবং যেমন সংযোগগুলি বিভিন্ন রাউটারগুলির মধ্য দিয়ে যায় তবে এটি কোনও সমস্যা নয়। পার্শ্ব সুবিধা হিসাবে এটি যদি আপনাকে কোনও সংযোগের আউটজেস থাকে তবে তা আপনাকে কিছু পরিমাণ অতিরিক্ত বাজেয়াপ্ত দেয়।

যদি আপনি আইপিভি 6 সমর্থন সহ কোনও আইএসপি খুঁজে না পান তবে আপনার সার্ভারটিকে একটি হোস্টিং সুবিধার দিকে নিয়ে যাওয়া বিবেচনা করা উচিত। একটি হোস্টিং সুবিধার সার্ভারের সাহায্যে আপনি ভৌগলিক অবস্থানের উপর কম নির্ভরশীল এবং সেই কারণেই সরবরাহকারীদের মধ্যে আরও প্রতিযোগিতা রয়েছে যা আপনার চাহিদা পূরণের জন্য এটির নিশ্চিতকরণে সহায়তা করবে।

হোস্টিং সুবিধাটিতে সার্ভারটি সরানো আপনার ক্লায়েন্টদের আইপিভি 6 দিচ্ছে না, তবে সার্ভারটি সরানো মানে এটিতে পৌঁছানোর জন্য আপনাকে আর হেয়ারপিন NAT এর দরকার নেই।

আপনার যা করা উচিত নয়

আপনার যদি আইপিভি 6 ট্র্যাফিক রুট করার উপায় না থাকে তবে আইপিভি 6 চালু করবেন না এবং এএএএ রেকর্ড তৈরি করবেন না। যদি আপনার আইএসপি আইপিভি 6 সমর্থন করে না তবে আপনি আপনার লেনে আইপিভি 6 সক্ষম করে বেছে নিতে পারেন (সম্ভবত আরএফসি 4193 ঠিকানা ব্যবহার করে) এবং এএএএ রেকর্ড তৈরি করুন এটি আপনার ল্যানে থাকা ক্লায়েন্টদের জন্য আপনার ল্যানে সার্ভারে পৌঁছে যাবে work তবে আপনার ল্যান এবং বাইরের বিশ্বের মধ্যে যোগাযোগ প্রথমে আইপিভি 6 চেষ্টা করবে (যা কাজ করবে না), এবং আপনি আইপিভি 4-তে ফিরে যাওয়ার উপর নির্ভর করবেন যা সর্বোপরি কিছুটা ধীর হয় বা খারাপভাবে ঘটে না।


0

যেহেতু আমি এই প্রশ্নটিও জিজ্ঞাসা করেছি (দেখুন আমি কীভাবে কোনও নেটওয়ার্ক সার্ভিসটি তার বাইরের আইপি ব্যবহার করে ভিতরে থেকে একটি ফায়ারওয়ালের পিছনে নেটেড অ্যাক্সেস করব? ) এবং এখানে পুনঃনির্দেশিত হয়েছিল তবে এখানে উত্তরগুলি কোনও সমাধান দেয় না (জেনেরিক ব্যাখ্যাগুলির বিপরীতে ) আমার iptablesপরীক্ষার কয়েক ঘন্টা প্রত্যেককে বাঁচাতে এখানে আমার লিনাক্স ( নির্দিষ্ট) সমাধান সরবরাহ করুন। এই ফাইলটি iptables-restoreফর্ম্যাটে রয়েছে এবং iptables এ সরাসরি পড়তে পারেন (অবশ্যই আইপি ঠিকানাগুলি সম্পাদনার পরে)। এটি একটি ওয়েব সার্ভারের জন্য (পোর্ট 80) এবং কেবল আইপিভি 4-এর জন্য নিয়মগুলি আইপিভি 6 এবং এসএসএল (পোর্ট 443) এর জন্য সাদৃশ্যপূর্ণ।


# Port forwarding for VM / Container access with „hairpin NAT“.
*nat
:PREROUTING ACCEPT [3:205]
:INPUT ACCEPT [59:670]
:OUTPUT ACCEPT [16:172]
:POSTROUTING ACCEPT [20:257]

# This was simple port forwarding - access works from outside but not from inside
#-A PREROUTING  -4 -p tcp -i eth0 --dport 80 -j DNAT --to web.local:80

# This is real hairpin NAT which allows „web.local“ to access itself via the VM hosts external IP.
# First we need to masquerade any traffic going out the external interface:
-A POSTROUTING -o eth0 -j MASQUERADE

# Then we need to reroute incoming traffic on the public IP to the local IP:
-A PREROUTING  -4 -p tcp -d web.public.com --dport  80 -j DNAT --to web.local:80

# And finally we need to tell the router that the source IP of any traffic
# coming from the LAN must be source-rewritten when going to the web server:
-A POSTROUTING -4 -p tcp -s lan.local/24 -d web.local --dport  80 -j SNAT --to-source web.public.com:80

COMMIT

প্রতিস্থাপন lan.local, web.localএবং web.public.comআপনার স্থানীয় নেটওয়ার্কের সঙ্গে (যেমন। 10.0.x.0 / 24), আপনার ওয়েবসার্ভার এর স্থানীয় IP তে (10.0.1.2 যেমন), এবং আপনার রাউটার পাবলিক আইপি (যেমন। 4.5.6.7)। -4ঠিক একই ফাইলের মধ্যে IPv6, এবং IPv4- র নিয়ম (যেমন লাইন দ্বারা উপেক্ষিত অনুমতি দেওয়া ip6tables)। এছাড়াও, [বন্ধনী] এ IPv6 অ্যাড্রেসের করা যখন তারা, পোর্ট ঘোষণা অন্তর্ভুক্ত যেমন মনে রাখবেন [fe0a:bd52::2]:80

এই প্রশ্নগুলির ব্যাখ্যাগুলি বাস্তবায়নের চেষ্টা করার সময় সেগুলিই আমার চুলগুলি টানতে বাধ্য করেছিল। আমি আশা করি আমি কিছুই বাদ দিইনি


ওয়ান ইন্টারফেসে মাস্কেরড সাধারণত কার্যকর, তবে "হেয়ারপিন নাট" প্রশ্নের সাথে সম্পর্কিত নয়। ক্যানোনিকাল উত্তরটি ল্যান ইন্টারফেসে মাসকোয়ার্ডের প্রস্তাব দেয় এবং আপনি পরিবর্তে একটি এসএনএটি প্রস্তাব করেন ( এসএনএটি প্রায় মাস্কুরাডির সমান )। আপনি কিছুটা অদ্ভুত উত্স আইপি: পোর্ট ওভাররাইড জোর করে।
kubanczyk

0

আমি এখানে একটি উত্তর যুক্ত করব কারণ এখানে মন্তব্যগুলি আমার বিশেষ সমস্যার সমাধান করে নি। আমি সন্দেহ করি কারণ আমি একটি খারাপ লিনাক্স কার্নেল বাগটি আঘাত করেছি hit সেটআপটি হ'ল:

internet <--> modem 1.1.1.1/30 <--> switch <---> LAN 10.1.1.0/24
                                      ^
        +----------------------+      |
        |              /--eth0 o <----/
        |              |       |           
        | 10.1.1.1/24 br0      |           v (antenna)
        |  1.1.1.2/30  |       |           |
        |              \-wlan0 o ----------/
        +----------------------+ 

জটিল বর্ণনামূলক চিত্র থাকা সত্ত্বেও অন্যান্য মন্তব্যে আবদ্ধ পরিস্থিতিতে একমাত্র প্রাসঙ্গিক পরিবর্তন হ'ল সফটওয়্যার ব্রিজ, বিআর 0 এটি সেখানে কারণ গেটওয়ে বাক্সটি ল্যানের জন্য একটি বেতার অ্যাক্সেস পয়েন্টও।

আমাদের গেটওয়ে বাক্সটি এখনও ল্যানের মেশিনগুলির জন্য NAT কর্তব্য সম্পাদন করছে। কারণ এটিতে কেবল 1 ইথারনেট পোর্ট রয়েছে এটি হেয়ারপিন নাট করতে বাধ্য হয়। আমি সন্দেহ করি এটি অন্য মন্তব্যগুলিতে প্রদত্ত iptables নিয়মগুলির সাথে কাজ করা উচিত, তবে লিনাক্স কার্নেলের মধ্যে 4.9 কমপক্ষে এটি হয় না। ৪.৯ এর নিচে আমাদের গেটওয়ে বাক্সটি ল্যানের মেশিনগুলিতে নেট থেকে প্রবেশ করার চেষ্টা করে ইন্টারনেটে অ্যাক্সেস করতে পারে।

tcpdumpএথ0-এ আঘাত করে আগত প্যাকেটগুলির প্রতিক্রিয়া দেখায়, তবে তারা এটিকে0 থেকে বের করে না। এই আদেশটি চালানো ঠিক করে দেয়:

ebtables -t brouter -A BROUTING -d 01:00:00:00:00:00/01:00:00:00:00:00 -j ACCEPT
ebtables -t brouter -A BROUTING -p IPv4 --ip-dst 10.1.1.0/24 -j ACCEPT
ebtables -t brouter -A BROUTING -p IPv4 --ip-src 10.1.1.0/24 -j ACCEPT
ebtables -t brouter -A BROUTING -p IPv4 -j DROP

কমান্ড চালানোর আগে ইনকামিং প্যাকেটগুলি কার্নেলের ডিফল্ট আচরণ অনুযায়ী প্রক্রিয়া করা হয়, যা সেতুতে তাদের দেওয়া হয় তারপরে তাদের কার্নেলের রাউটিং মডিউলগুলি প্রেরণ করা হয়। কমান্ড প্যাকেটগুলি জোর করে যা ল্যান থেকে নেই সেতুটি বাইপাস করে সরাসরি রাউটিংয়ে যায়, যার অর্থ সেতুটি সেগুলি ফেলে দেওয়ার কোনও সুযোগ পায় না। সম্প্রচার এবং মাল্টিকাস্ট ঠিকানাগুলি ব্রিজ করতে হবে, অন্যথায় ডিএইচসিপি এবং এমডিএনএসের মতো জিনিসগুলি কাজ করবে না। আপনি যদি আইপিভি 6 ব্যবহার করে থাকেন তবে আপনাকে অবশ্যই এটির জন্য নিয়ম যুক্ত করতে হবে।

আপনি এটি ব্যবহার করে সমস্যার সমাধান করার জন্য প্রলুব্ধ হতে পারেন:

brctl hairpin br0 eth0 on
brctl hairpin br0 wlan0 on

আমি অবশ্যই খুব প্রলুব্ধ হয়েছিল - এটি আমার প্রথম চেষ্টা ছিল। যত তাড়াতাড়ি আমি এটি ল্যানের মেশিনগুলি ইন্টারনেটে অ্যাক্সেস অর্জন করেছি, তাই এটি কিছুক্ষণের জন্য কাজ করে। তারপরে নিম্নলিখিতটি ঘটেছে (এবং আমি পরীক্ষার পুনরাবৃত্তি করতে যত্ন করি নি):

  1. ল্যান পেরিয়ে গেটওয়ে পর্যন্ত পিংয়ের সময়টি প্রায় 10 সেকেন্ডের বিরতিতে দ্বিগুণ হয়ে যায়, 0.1 মিমি থেকে 0.2 সেমি, 0.4 মিমি, 0.8 মিমি, 2 মিমি এবং আরও কিছুক্ষণ গেটওয়ে বক্সটি ল্যান থেকে অ্যাক্সেসযোগ্য না হওয়া পর্যন্ত। এটি প্যাকেট ঝড়ের মতো গন্ধযুক্ত, তবে এসটিপি সর্বত্র চালু ছিল।
  2. সমস্ত ওয়্যারলেস অ্যাক্সেস পয়েন্টগুলি মারা যাওয়ার খুব বেশি পরে না।
  3. ওয়্যারলেস দিয়ে কী ঘটছে তা নির্ণয়ের চেষ্টা করার সময় সমস্ত আইপি ফোন রিবুট হয়েছিল।
  4. এর খুব বেশি পরে, তারযুক্ত মেশিনগুলি ল্যানটির সাথে সমস্ত যোগাযোগ হারিয়ে ফেলে lost

একমাত্র উপায় ছিল বিল্ডিংয়ের প্রতিটি মেশিন পুনরায় বুট করা। এর ব্যতিক্রমটি হ'ল হার্ডওয়্যার সুইচগুলি, যা পুনরায় চালু করা যায়নি। তাদের শক্তিচক্র হতে হয়েছিল।


0

এটি একটি আধ্যাত্মিক প্রশ্ন হিসাবে। আপনার যদি সোনিকওয়াল রাউটার থাকে তবে আমি উত্তর দেব।

জানতে এক্সপ্রেশন হ'ল NAT লুপব্যাক নীতি

এই ডকুমেন্টটি বর্ণনা করে যে কীভাবে একটি সোনিকওয়াল ল্যানের একটি হোস্ট এফকিউডিএন-তে সার্ভারের সর্বজনীন আইপি ঠিকানা ব্যবহার করে সোনিকওয়াল ল্যানের কোনও সার্ভার অ্যাক্সেস করতে পারে। একটি এনএসএ 4500 (সোনিকোস বর্ধিত) নেটওয়ার্কের কল্পনা করুন যেখানে প্রাথমিক ল্যান সাবনেট 10.100.0.0 / 24 এবং প্রাথমিক ডাব্লুআইএন আইপি 3.3.2.1। ধরা যাক আপনার গ্রাহকদের জন্য আপনার কাছে একটি ওয়েবসাইট রয়েছে এবং এর হোস্টনামটি। আপনি ইতিমধ্যে প্রয়োজনীয় নীতিগুলি এবং নিয়মগুলি লিখে রেখেছেন যাতে বাইরের লোকেরা ওয়েব সাইটে পেতে পারে তবে এটি একটি প্রাইভেট সাইড সার্ভারে 10.100.0.2 এ চলছে। এখন কল্পনা করুন যে আপনি 10.100.0.200 এর আইপি সহ প্রাইভেট সাইডে ল্যাপটপ ব্যবহার করছেন এমন একজন ব্যক্তি। আপনি সার্ভারের সর্বজনীন নামটি ব্যবহার করে পৌঁছাতে চান, কারণ আপনার ল্যাপটপটি রাস্তায় আপনার সাথে থাকলে আপনি একই কাজ করেন। আপনি যদি ব্যক্তিগত পাশে বসে থাকেন এবং http://www.example.com অনুরোধ করুন>, সার্ভারটি স্থানীয় আইপি ঠিকানায় আপনার ঠিক পাশেই থাকা সত্ত্বেও লুপব্যাকই এটি কাজ করা সম্ভব করে।

এই কার্যকারিতাটির অনুমতি দেওয়ার জন্য আপনাকে একটি NAT লুপব্যাক নীতি তৈরি করতে হবে যা NAT প্রতিবিম্ব বা হেয়ারপিন নামেও পরিচিত।

ল্যানব্যাক নীতি WAN ইন্টারফেসের আইপি ঠিকানা ব্যবহার করে

Login to the SonicWall Management GUI.
Navigate to Manage | Rules | NAT Policies submenu.
Click on the Add button.
Create the following NAT Policy.
Original Source: LAN Subnets (or Firewalled Subnets if you want hosts in other zones to be included)
Translated Source: WAN Interface IP
Original Destination: WAN Interface IP
Translated Destination: (LAN server object)
Original Service: Any
Translated Service: Original
Inbound Interface: Any
Outbound Interface: Any

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


-2

ফ্রিবিএসডি-তে পিএফ ব্যবহার করা এটি (আপনার পিএফ.কমফ ফাইলটিতে) এর মতো সহজ:

extif = "tun0"
intif = "em0"
{other rules}...
nat on $intif from any to 192.168.20.8 port 80 -> ($extif)

192.168.20.8 হবে অভ্যন্তরীণ ওয়েব সার্ভার।

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