ইন্টারফেস না এনে নেটওয়ার্ক কেবলটি প্লাগ ইন করা হয়েছে কিনা তা পরীক্ষা করুন


9

আমি 20 ডলার রিমোট সার্ভারে (প্রতিটি সার্ভারে 2-6 এনআইসি) NIC গুলি সনাক্ত করার চেষ্টা করছি। শুরু করার জন্য, আমি ব্যবহারের জন্য প্রস্তুত এবং ফ্রিগুলি সনাক্ত করতে চাই। আমি কীভাবে শারীরিক মাধ্যমের অবস্থা পরীক্ষা করতে পারি? আমি অন্তর্গত কিছু উপায় জানি ifconfig|grep RUNNING, ethtool, cat /sys/class/net/eth0/carrier, কিন্তু তারা প্রয়োজন যে ইন্টারফেস আপ হয়। আমি সব ইন্টারফেস আনতে চাই না। কেন তা নিশ্চিত নয় তবে আমি সক্ষম করতে চাই না তবে নেটওয়ার্কে ইন্টারফেস কনফিগার করা নেই। আমি কি এড়াতে পারি এমন কোন উপায় আছে?

বা আমি কি ঠিক ভুল এবং সমস্ত ইন্টারফেস (এবং কনফিগার করা হয়নি) সম্পর্কে খারাপ কিছু নেই? এমনকি তারা প্লাগ ইন করা হয়?

উত্তর:


5

ip link show, ডিফল্টরূপে সমস্ত ইন্টারফেস দেখায়, ip link show upকেবল চলমান ইন্টারফেস দেখানোর জন্য ব্যবহার করুন। পার্থক্য পেতে আপনি ফিল্টার ব্যবহার করতে পারেন।


আহা। এবং অনুপস্থিত কেবলটি কোনও নন-ক্যারিয়ার হিসাবে প্রদর্শিত হবে, তাই না?
minaev

বিঙ্গো। ধন্যবাদ। আর ip addr showএমনকি আউটপুট IP ঠিকানা যোগ করে।
minaev

2
এটি আমার মেশিনে কাজ করে না (দেবিয়ান স্কিজেজ, স্কেজ ড্রাইভার): ip link show"ডাউন" ছাড়া আর কিছুই দেখায় না। ipএকই তথ্য হিসাবে ifconfigএবং /sys/class/net/যে কোনও ক্ষেত্রে রিপোর্ট করে , তাই না? আপনি কি নিজের লিঙ্কের স্থিতির তথ্যটি পান ipযা আপনার মেশিনের অধীনে /sys/class/netথেকে আসে বা তার থেকে আলাদা ifconfig? অথবা আপনি যে ইন্টারফেসগুলি /sys/class/net(আমি পেয়েছি /sys/class/net/eth0/carrier: Invalid argument) নিচে রয়েছে সে সম্পর্কে লিঙ্কের স্থিতি পাবেন ?
গিলস 'অশুভ হওয়া বন্ধ করুন'

ইন্টারফেস ডাউন থাকলে এটি কাজ করে না।
ভ্লাদিমির কুনশিকভ

@ নিখিল মুলি ফিল্টার বলতে কী বোঝ?
জো

2

রিয়েলটাইমের সংযোগের অবস্থার উপর ভিত্তি করে ডিফল্ট রুটগুলি আপডেট করার জন্য আমার স্ক্রিপ্ট এখানে । (পটভূমিতে রান) একাধিক ইন্টারফেসের সাথে কাজ করে, আমি /tmp/${iface}.metricফাইলে অগ্রাধিকারগুলি সংজ্ঞায়িত করি , 'সেরা' সংযুক্ত ইন্টারফেসটি ডিফল্ট ট্র্যাফিকের পথে যেতে ব্যবহৃত হবে।

#!/bin/sh

/sbin/ip monitor link | while read -r line
do
    iface=$(echo $line | sed -ne 's/[^ ]* \([^ ]*\): .* state \([^ ]*\).*/\1/p')
    state=$(echo $line | sed -ne 's/[^ ]* \([^ ]*\): .* state \([^ ]*\).*/\2/p')
    if [ "$iface" != "" ] ; then
        echo "$iface is $state"
        if [ -f /tmp/${iface}.metric ] ; then
                echo "updating default route for ${iface}"
                if [ "$state" = "DOWN" ] ; then
                        ip route del default dev "${iface}"
                else
                        ip route add default dev "${iface}" metric `cat /tmp/${iface}.metric`
                fi
        fi
    fi
done

0

আইপি লিংক শোটি প্লাগ ইন থাকা ক্যাবলটি চিহ্নিত করতে পতাকাটি "LOWER_UP" প্রদর্শন করে। আপনি / sys / class / নেট / এথ * / অপারসেট বা ক্যারিয়ারের জন্যও পরীক্ষা করতে পারেন। যাইহোক, এগুলি সমস্ত শুধুমাত্র তার উপর আবদ্ধ আইপি ঠিকানার সাথে ইন্টারফেসের জন্য কাজ করে।


1
আকর্ষণীয় তথ্য, তবে প্রকৃত পোস্টটির উত্তর দেয় না।
এক্স টিয়ান

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