উইন্ডোজ এক্সপিতে এমটিইউ কী ব্যবহার হচ্ছে তা কীভাবে বলা যায়


21

আমি একটি সত্যিই অদ্ভুত সমস্যায় ভুগছি যেখানে আমি এলোমেলোভাবে "সার্ভারের সাথে সংযোগটি পুনরায় সেট করা হয়েছিল" ওয়েব পৃষ্ঠাগুলি অ্যাক্সেস করার চেষ্টা করার সময় ত্রুটিগুলি পেয়েছি (উইন্ডোজ নেটওয়ার্ক ডায়াগনস্টিক টুল অনুসারে HTTP ত্রুটি 12031) - ওয়েব পেজ কিনা তা নির্বিশেষে এটি ঘটে আমি অ্যাক্সেসের চেষ্টা করছি বাহ্যিক ইন্টারনেটে বা এমনকি যদি এটি স্থানীয় আপাচে উদাহরণ থেকে লোকালহোস্টে চলছে। এটি আমাদের স্থানীয় নেটওয়ার্কের সমস্ত কম্পিউটারকে প্রভাবিত করে (ইথারনেট, ওয়্যারলেস নয়), যার সবগুলি উইন্ডোজ এক্সপি চলছে।

আমার কাছে পরামর্শ দেওয়া হয়েছে যে এটি নেটওয়ার্ক ট্র্যাফিকে ব্যবহৃত এমটিইউর সাথে করা উচিত। যদি আমি সবচেয়ে বড় প্যাকেটটি আনফ্র্যাগমেন্টযুক্ত যেতে পারি তা সন্ধানের জন্য যদি আমি পিং টেস্টটি করি, তবে আমি 1492 বাইটের প্যাকেজ (একটি হেডারের জন্য +28 বাইট?) দিয়ে লোকালহোস্টের পিং করতে পারি এবং আমি 1462 বাইটের প্যাকেজ সহ আমাদের রাউটারটি পিং করতে পারি? (যখন আপনি 28 বাইট শিরোনাম অন্তর্ভুক্ত করবেন তখন 1490 বাইট)। আমি যদি গুগলের মতো বাইরে কিছু চেষ্টা করে থাকি তবে 1430 এর চেয়ে বড় (যা শিরোনাম দিয়ে 1458) এর মাধ্যমে আমি কিছুই পেতে পারি না।

আমি এই এমটিইউ সেটিং, আপডেট করে উইন্ডোজ এক্সপি রেজিস্ট্রি আপডেট করার জন্য বিভিন্ন সেট নির্দেশাবলী অনুসরণ করার চেষ্টা করেছি HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{AdapterID}\MTU। আমি বিকল্প মানের কোনও শেষের চেষ্টা করেছি না: সর্বাধিক সুস্পষ্ট সঠিক মানটি 1490 বলে মনে হচ্ছে, তবে আমি 1462, 1458, 1430, ইত্যাদিও চেষ্টা করেছি মনে হয় কয়েক মিনিটের জন্য কাজ করা হয়েছে (নির্দিষ্ট করে বলা শক্ত কারণ এটি সবসময় ধারাবাহিকের চেয়ে এলোমেলো) তবে এটি কখনও দীর্ঘায়িত হয় না।

প্রথমদিকে, যখন আমি মূল্য হিসাবে 1430 চেষ্টা করছিলাম, কয়েক মিনিট জরিমানা কাজ করার পরে, পিং টেস্টের ফলাফলগুলি 28 বাইটে হ্রাস পাবে - হঠাৎ আমি খুঁজে পেয়েছি যে আমি কেবল গুগলের মাধ্যমে 1402 বাইটের একটি প্যাকেজ পেতে পারি। আমি যদি এমটিইউ রেজিস্ট্রি সেটিংটি 1402-তে আপডেট করেছি, যখন আমি রিবুট করেছি এবং কয়েক মিনিট অপেক্ষা করেছি, তখন এটি 1374, তারপর 1346 ইত্যাদি হবে etc. ইত্যাদি। নেটওয়ার্কের অন্যান্য কম্পিউটারগুলি অকার্যকর থেকে যায় (এখনও 1430 এ) এবং এমটিইউ সেটিংটি অপসারণ করে রেজিস্ট্রি থেকে জিনিসগুলি স্বাভাবিক (এবং এখনও ভাঙ্গা) পুনরুদ্ধার করবে।

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

এছাড়াও, যদি কারও কারও ধারনা থাকে কীভাবে বলবেন যে এমটিইউ কেন 28 টি করে নামছে, এটিও কার্যকর হবে (উদাহরণস্বরূপ, উইন্ডোজ লগ ফাইলটি কোথাও রয়েছে যেখানে মানটি পরিবর্তিত হয় এমন কিছুতে লগইন হবে?)

অবশেষে, কেউ যদি আমাকে নির্দিষ্ট করে বলতে পারে যে কীভাবে এমটিইউ সেটিংটি ব্যবহার করার চেষ্টা করা উচিত, তা বলার অপেক্ষা রাখে না!


এফডব্লিউআইডাব্লু, শেষ পর্যন্ত এটি ছিল একটি ছদ্মবেশী ফোন লাইন যা সমস্যা ছিল। আমি যখন কোনও ফোন প্লাগ করি তখন কোনও ডায়াল টোন ছিল না।
andygeers

উত্তর:


58

উইন্ডোজ,, উইন্ডোজ ভিস্তা এবং উইন্ডোজ এক্সপির জন্য, বিভিন্ন ইন্টারফেসের জন্য এমটিইউ উইন্ডোজ নিজেই ব্যবহার করে উপলব্ধ netsh

উইন্ডোজ 7, ​​উইন্ডোজ ভিস্তা

কমান্ড প্রম্পট থেকে উইন্ডোজ 7 বা উইন্ডোজ ভিস্তাতে বর্তমান এমটিইউ প্রদর্শন করতে :

C:\Users\Ian>netsh interface ipv6 show subinterfaces

       MTU  MediaSenseState   Bytes In  Bytes Out  Interface
----------  ---------------  ---------  ---------  -------------
      1280                1   24321220    6455865  Local Area Connection
4294967295                1          0    1060111  Loopback Pseudo-Interface 1
      1280                5          0          0  isatap.newland.com
      1280                5          0          0  6TO4 Adapter

এবং আইপিভি 4 ইন্টারফেসের জন্য:

C:\Users\Ian>netsh interface ipv4 show subinterfaces

       MTU  MediaSenseState   Bytes In  Bytes Out  Interface
----------  ---------------  ---------  ---------  -------------
      1500                1  146289608   29200474  Local Area Connection
4294967295                1          0      54933  Loopback Pseudo-Interface 1

দ্রষ্টব্য: এই উদাহরণে আমার লোকাল এরিয়া সংযোগ আইপিভি 6 ইন্টারফেসের এত কম এমটিইউ (1280) রয়েছে কারণ আমি আইপিভি 6 সংযোগ পেতে একটি টানেল পরিষেবা ব্যবহার করছি ।

আপনি আপনার এমটিইউ (উইন্ডোজ 7, ​​উইন্ডোজ ভিস্তা) পরিবর্তন করতে পারেন । একটি উন্নত কমান্ড প্রম্পট থেকে:

>netsh interface ipv4 set subinterface "Local Area Connection" mtu=1492 store=persistent
Ok.

উইন্ডোজ 7 সার্ভিস প্যাক 1 দিয়ে পরীক্ষিত

উইন্ডোজ এক্সপি

netshWindows XP এর জন্য সিনট্যাক্স সামান্য আলাদা:

C:\Users\Ian>netsh interface ip show interface

Index:                                  1
User-friendly Name:                     Loopback
Type:                                   Loopback
MTU:                                    32767
Physical Address:                       

Index:                                  2
User-friendly Name:                     Local Area Connection
Type:                                   Etherenet
MTU:                                    1500
Physical Address:                       00-03-FF-D9-28-B7

দ্রষ্টব্য: উইন্ডোজ এক্সপিকে একটি ইন্টারফেস (এমটিইউ সহ) সম্পর্কিত বিশদটি দেখার আগে রাউটিং এবং রিমোট অ্যাক্সেস পরিষেবা শুরু করা দরকার:

C:\Users\Ian>net start remoteaccesss

উইন্ডোজ এক্সপি ভিতরে থেকে এমটিইউ সেটিংস পরিবর্তন করার কোনও উপায় সরবরাহ করে না netsh। তার জন্য আপনি করতে পারেন:

উইন্ডোজ এক্সপি সার্ভিস প্যাক 3 দিয়ে পরীক্ষিত

আরো দেখুন


এমটিইউ কী, যেখানে 28 বাইট আসছে সে সম্পর্কে সংক্ষিপ্ত আলোচনা।

আপনার নেটওয়ার্ক কার্ডের (ইথারনেট) সর্বাধিক প্যাকেটের আকার রয়েছে 1,500 bytes:

+---------+
| 1500    |
| byte    |
| payload |
|         |
|         |
|         |
+---------+

টিসিপি / আইপি আইপি অংশের জন্য একটি 20 বাইট শিরোলেখ প্রয়োজন (12 টি বাইট ফ্ল্যাগ, উত্স আইপি ঠিকানার জন্য 4 বাইট, গন্তব্য আইপি ঠিকানার জন্য 4 বাইট)। এটি প্যাকেটে কম জায়গা উপলব্ধ রাখে:

+------------------------+
| 12 bytes control flags | \
| 4 byte from address    | |- IP header: 20 bytes
| 4 byte to address      | /
|------------------------|
| 1480 byte payload      |
|                        |
|                        |
|                        |
+------------------------+

এখন একটি আইসিএমপি (পিং) প্যাকেটে একটি 8-বাইট শিরোলেখ (1 বাইট type, 1 বাইট code, 2 বাইট checksum, 4 বাইট অতিরিক্ত ডেটা) রয়েছে:

+------------------------+
| 12 bytes control flags | \
| 4 byte from address    | |
| 4 byte to address      | |- IP and ICMP header: 28 bytes
|------------------------| |
| 8 byte ICMP header     | /
|------------------------|
| 1472 byte payload      |
|                        |
|                        |
|                        |
+------------------------+

সেখানে "অনুপস্থিত" ২৮ বাইট রয়েছে - এটি একটি পিং প্যাকেট প্রেরণের জন্য প্রয়োজনীয় শিরোনামের আকার।

আপনি যখন একটি পিং প্যাকেট প্রেরণ করেন আপনি কতটা অতিরিক্ত পেওলড ডেটা অন্তর্ভুক্ত করতে চান তা নির্দিষ্ট করে দিতে পারেন। এই ক্ষেত্রে, আপনি যদি সমস্ত 1472 বাইট অন্তর্ভুক্ত করেন:

>ping -l 1472 obsidian

তারপরে ফলস্বরূপ ইথারনেট প্যাকেটটি পুরো গিলগুলিতে পূর্ণ হবে। 1500 বাইট প্যাকেটের প্রতিটি শেষ বাইট পূরণ করা হবে:

+------------------------+
| 12 bytes control flags | \
| 4 byte from address    | |
| 4 byte to address      | |- IP and ICMP header: 28 bytes
|------------------------| |
| 8 byte ICMP header     | /
|------------------------|
|........................|
|........................|
|. 1472 bytes of junk....|
|........................|
|........................|
|........................|
|........................|
+------------------------+

আপনি যদি আরও একটি বাইট প্রেরণ চেষ্টা করেন

>ping -l 1473 obsidian

নেটওয়ার্কটি 1501 বাইট প্যাকেটটিকে একাধিক প্যাকেটে খণ্ডিত করতে হবে:

Packet 1 of 2
+------------------------+
| 20 bytes control flags | \
| 4 byte from address    | |
| 4 byte to address      | |- IP and ICMP header: 28 bytes
|------------------------| |
| 8 byte ICMP header     | /
|------------------------|
|........................|
|........................|
|..1472 bytes of payload.|
|........................|
|........................|
|........................|
|........................|
+------------------------+

Packet 2 of 2
+------------------------+
| 20 bytes control flags | \
| 4 byte from address    | |
| 4 byte to address      | |- IP and ICMP header: 28 bytes
|------------------------| |
| 8 byte ICMP header     | /
|------------------------|
|.                       |
| 1 byte of payload      |
|                        |
|                        |
|                        |
|                        |
|                        |
+------------------------+

এই বিভাজনটি পর্দার আড়ালে ঘটবে, আদর্শভাবে আপনি না জেনেই।

তবে আপনি বোঝাতে পারেন, এবং নেটওয়ার্ককে জানান যে প্যাকেটটি খণ্ডিত করার অনুমতি নেই:

>ping -l 1473 -f obsidian

-F পতাকা মানে টুকরা না । এখন আপনি যখন এমন প্যাকেট পাঠানোর চেষ্টা করবেন যা নেটওয়ার্কে ফিট না করে আপনি ত্রুটিটি পান:

>ping -l 1473 -f obsidian  

Packet needs to be fragmented but DF set.

প্যাকেটটি খণ্ডিত হওয়া দরকার, তবে না খণ্ড খণ্ডিত পতাকা সেট করা হয়েছিল।

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

ওয়েব সার্ভারের কাজ না করার কারণেই এটি। আপনি প্রাথমিক ছোট (<1280 বাইট) প্রতিক্রিয়া পেতে পারেন, তবে বৃহত্তর প্যাকেটগুলি পেতে পারে না। এবং ওয়েব-সার্ভারের ফায়ারওয়ালগুলি ভুল কনফিগার করা হয়েছে, আইসিএমপি প্যাকেটগুলি ব্লক করে। সুতরাং ওয়েব-সার্ভার বুঝতে পারে না যে আপনি কখনও প্যাকেটটি পেলেন না।

প্যাকেট ফ্র্যাগমেন্টেশন IPv6, অনুমোদিত নয়, সবাই হয় প্রয়োজনীয় (সঠিকভাবে) অনুমতি দেয় ICMP MTU আবিষ্কার প্যাকেট করতে।


8

@ian আমি এতটা নিশ্চিত নই যে netshপ্রকৃতপক্ষে বর্তমানে ব্যবহৃত এমটিইউ দেখায়। আমার উইন্ডোজ এক্সপি প্রো এসপি 3 মেশিনে, আমি কার্যকর করেছিলাম netsh interface ip show interfaceএবং এটি সম্পর্কিত ইন্টারফেসের জন্য এমটিইউ মান হিসাবে রিপোর্ট করে 1500। আমি তখন নিম্নলিখিত রেজিস্ট্রি কী যুক্ত করেছি:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\EnablePMTUDiscovery
    value: 0

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{ID}\MTU 
    value: various (e.g. 1200)

মাইক্রোসফ্ট বলেছে যে EnablePMTUDiscovery0 এ সেট করা এমটিইউ 576 তে সেট করবে।

সেট MTUরেজিস্ট্রি এন্ট্রি MTU ম্যানুয়ালি সেট করে। আমি MTUএন্ট্রি (প্রতিটি সময় পুনরায় বুট করা) জন্য বেশ কয়েকটি মান চেষ্টা করেছিলাম ।

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

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

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

যে নির্দেশাবলী আমি অনুসরণ করেছি, যা আমাকে রেজিস্ট্রিতে উপরের পরিবর্তনগুলি করতে পরিচালিত করেছিল, সেগুলি KB900926 এ ছিল: এমএনইউ 576 এর চেয়ে কম আকারের (পদ্ধতি 2 এবং 3) এর সাথে WAN লিঙ্কগুলির জন্য প্রস্তাবিত TCP / IP সেটিংস


@ আইয়ান দ্বারা সম্পাদনা করুন

দেখে মনে হচ্ছে আপনি ঠিক বলেছেন। 1,200 এর জন্য কনফিগার করুন তবে netshপ্রতিবেদনগুলি 1500

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

>ping -l 1173 -f obsidian

Packet needs to be fragmented but DF set.

সুতরাং আমি অনুমান করি যে মূল প্রশ্নের উত্তরটি হ'ল উইন্ডোজ এক্সপিতে আপনি প্রেরণ করতে পারেন এমন সবচেয়ে বড় প্যাকেট সন্ধানের জন্য পতাকা টুকরো টুকরো দিয়ে ট্রায়াল-অ্যান্ড-ত্রুটি ব্যবহার করতে হবে। তারপরে আপনার এমটিইউ রয়েছে।


2

আপনি পরীক্ষা এবং ত্রুটির পদ্ধতির সাথে পিং ব্যবহার করে এমটিইউ খুঁজে পেতে পারেন:

ping <address> -f -l nnnn

পিং :

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

-l মাপ: প্রেরিত ইকো অনুরোধ বার্তায় ডেটা ক্ষেত্রের দৈর্ঘ্য, বাইটে নির্দিষ্ট করে। ডিফল্ট 32. সর্বাধিক আকার 65,527।

দৈর্ঘ্য খুব বেশি হলে আপনি "প্যাকেটকে খণ্ডিত করা দরকার তবে DF সেট" বার্তা পাবেন।


আমি "দ্য পিং টেস্ট"
এন্ডিজার্স

1

অ্যাডাপ্টারওয়াচ দেখুন :

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


1

মাইক্রোসফ্ট KB314496: বিভিন্ন নেটওয়ার্ক টোপোলজির জন্য ডিফল্ট এমটিইউ আকার
আপনার সাধারণ নেটওয়ার্ক সেটআপগুলিতে এমটিইউ কনফিগারেশন নিয়ে খেলতে চেষ্টা করা উচিত নয়।

এখানে একটি ভিবি কোড রেফারেন্স রয়েছে
এখানে ডিআরটিসিপি নামে একটি সরঞ্জাম রয়েছে :

বিকল্প পাঠ


রেজিস্ট্রি তে,

  • যাও HKLM\Software\Microsoft\Windows NT\CurrentVersion\NetworkCards
  • আপনার আগ্রহী অ্যাডাপ্টারটি খুলুন
  • ServiceNameস্ট্রিং কপি করুন
  • এই স্ট্রিংটি অনুসন্ধান করুন HKLM\System; আপনি একটি NetCfgInstanceIdচাবি মিলবে
  • একটু উপরে যে MaxFrameSizeকী হবে (আমার 1515 দেখায়)

netshকমান্ড দিয়ে এটি পরিবর্তন করার একটি উপায়ও রয়েছে।

এছাড়াও, আপনার পাথ এমটিইউ আবিষ্কারের কনফিগারেশন পরীক্ষা করে দেখুন ।


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