কোনও এনআইসির ইন্টারনেট অ্যাক্সেস রয়েছে কিনা তা নির্ধারণ করুন (বনাম স্থানীয়, বদ্ধ নেটওয়ার্ক)


2

বন্ধ নেটওয়ার্কের সাথে সংযোগ না দিয়ে একাধিক এনআইসি-র কোনটিতে ইন্টারনেট অ্যাক্সেস রয়েছে তা স্বয়ংক্রিয়ভাবে নির্ধারণের পাওয়ারশেলের কোনও উপায় আছে?

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

আমি সম্পর্কে জানি:

gwmi win32_networkadapterconfiguration -filter "ipenabled = 'true'"

এবং

gwmi win32_networkadapter -filter "NetConnectionStatus LIKE '2'"

এবং

Get-NetAdapter | ? {($_.status -eq 'up')

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

ধন্যবাদ।

উত্তর:


3

Test-ConnectionCmdlet আপনার সাথে উৎস ঠিকানা নির্দিষ্ট করার অনুমতি দেবে -Sourceপ্যারামিটার। আমরা প্রতিটি অ্যাডাপ্টারের দ্বারা ব্যবহৃত ঠিকানাগুলি পরীক্ষা করতে পারি।

$adapters = Get-NetIPAddress -AddressFamily ipv4 | Where-Object InterfaceAlias -in (Get-NetAdapter | Select-Object -ExpandProperty Name) | Select-Object IPAddress,InterfaceAlias

$adapters | % {

    Test-Connection -Source $_.IPAddress -Destination 8.8.8.8 -ErrorAction SilentlyContinue | Out-Null

    if($?) {
        write-host $_.InterfaceAlias "(" $_.IPAddress ") can connect to the internet."
    }
    else {
        write-host $_.InterfaceAlias "(" $_.IPAddress ") failed to connect to the internet."
    }

}

আউটপুট:

Local Area Connection ( 10.1.1.2 ) can connect to the internet
Ethernet 2 ( 10.1.1.3 ) failed to connect to the internet.
Wireless Network Connection ( 10.1.1.4 ) failed to connect to the internet.

আমি বুঝতে পারিনি test-connectionযে একটি -sourceবিকল্প আছে। আমি ঠিক তাই খুঁজছিলাম! দুর্ভাগ্যক্রমে, -sourceএবং -quietউভয় ব্যবহার করা যাবে না।
টেকনলেডজিস্ট

0

আমি বিশ্বাস করি যে ডিফল্ট রুটটি ব্যবহার করে কোন অ্যাডাপ্টারটি পরীক্ষা করা ভাল উপায়।

Get-NetRoute -DestinationPrefix "0.0.0.0/0"

এটি আপনাকে ifIndexঅ্যাডাপ্টারের জন্য দেয় যা ইন্টারনেটে সংযুক্ত হওয়া উচিত। ifIndexঅ্যাডাপ্টার পেতে একই ব্যবহার করা যেতে পারে ...

Get-NetAdapter -InterfaceIndex <number from previous command>

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

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

1
আপনি Find-NetRoute -RemoteIPAddress 8.8.8.8ইন্টারফেসের সূচকটি পেতে এমন কিছু ব্যবহার করতে পারেন যা ট্র্যাফিকটিকে সেই আইপিতে নিয়ে যায়।
ম্যাগনাস

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