একজন ম্যাক দ্বারা একটি এনআইসি পিং করতে পারেন


28

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

আমি একটি এআরপি এন্ট্রি তৈরি করার চেষ্টা করেছি:

arp -s 192.168.2.2 00-0c-0d-ef-02-03
ping 192.168.2.2

এটি কার্যকর হয়নি, যেহেতু এনআইসি কার্ডের এই আইপি ঠিকানা নেই। সুতরাং এনআইসি কার্ড পিংয়ের অনুরোধটি গ্রহণ করবে কিন্তু তাতে কোনও উত্তর দেবে না। এই কাছাকাছি কোন উপায় আছে?

আমি ইথারওক প্যাকেজটি একটি ভেক অন-ল্যান বার্তা প্রেরণে ব্যবহার করছি।

উত্তর:


23

arpingপরিবর্তে সরঞ্জামটি ব্যবহার করে আপনার ভাগ্য ভাল হতে পারে । সরঞ্জামটি ওএসআই মডেলেরping 3 স্তরের স্তরে কাজ করে , যেখানে স্তর 2 এ কাজ করে।arping

এই সরঞ্জামটি সহ আপনার এখনও সিস্টেমের আইপি জানতে হবে। এর দুটি সংস্করণ রয়েছে, বেশিরভাগ ইউনিক্সের (আলেক্সি কুজনেটসভের) অন্তর্ভুক্ত মানকটি হ'ল সংস্করণ যা কেবলমাত্র আইপি ঠিকানাগুলিই মোকাবেলা করতে পারে। অন্যান্য সংস্করণ (টমাস Habets ') কল্পনানুসারে MAC অ্যাড্রেস ব্যবহার খোঁজ করতে পারেন।

$ sudo arping 192.168.1.1 -c 1
ARPING 192.168.1.1 from 192.168.1.218 eth0
Unicast reply from 192.168.1.1 [00:90:7F:85:BE:9A]  1.216ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)

arpingpingআইসিএমপি প্যাকেট প্রেরণের পরিবর্তে একইভাবে কাজ করে , এটি এআরপি প্যাকেট প্রেরণ করে।

স্রেফ ম্যাক ব্যবহার করে একটি সিস্টেমের আইপি প্রাপ্ত

আইপি থেকে ম্যাকের বিপরীত চেহারা করার জন্য এখানে কয়েকটি পদ্ধতি রয়েছে।

  1. nmap

    $ nmap -sP 192.168.1.0/24
    

    তারপরে সংশ্লিষ্ট মেশিনের জন্য আপনার আরপ ক্যাশে দেখুন arp -an

  2. fping

    $ fping -a -g 192.168.1.0/24 -c 1
    

    তারপরে আপনার আরপ ক্যাশে দেখুন, উপরের মতো।

  3. পিং

    $ ping -b -c1 192.168.1.255
    

    তারপরে আপনার আরপ ক্যাশে দেখুন, উপরের মতো।

  4. এনবিটিস্ক্যান (উইন্ডোজ কেবল হোস্ট)

    $ nbtscan 192.168.1.0/24
    
    Doing NBT name scan for addresses from 192.168.1.0/24
    
    IP address       NetBIOS Name     Server    User             MAC address      
    ------------------------------------------------------------------------------
    192.168.1.0 Sendto failed: Permission denied
    192.168.1.4      MACH1            <server>  <unknown>        00-0b-12-60-21-dd
    192.168.1.5      MACH2            <server>  <unknown>        00-1b-a0-3d-e7-be
    192.168.1.6      MACH3            <server>  <unknown>        00-21-9b-12-b6-a7
    

3
arpingএকটি ম্যাক ঠিকানা প্যারামিটার হিসাবে নিতে পারে:arping -c 5 38:e7:d8:63:5e:a6

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

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

1
@ অ্যালাস্টারমুডি - আমি বলব যে আপনি সম্ভবত বায়োস ডাব্লুএল ডাব্লু / এনআইসির ডাব্লুএল চালু করার অনুমতি দিয়েছেন। তবে আপনি যদি বায়োস ডাব্লুএলএলকে সমর্থন না করেন তবে আমি মনে করি না এনআইসি করলেও আপনি এটি ব্যবহার করতে সক্ষম হবেন। ডব্লিউএল-তে উইকিপিডিয়া নিবন্ধটি দেখুন: en.wikedia.org/wiki/Wake-on-LAN । "সমস্যা সমাধানের যাদু প্যাকেট" বিভাগে আমি যেমনটি বলি।
slm

@niervol: arpingএকটি MAC ঠিকানা হবে: হ্যাঁ, দুই বাস্তবায়নের হয় arping 1. লিনাক্স থেকে iputils 2. টমাস Habets দ্বারা arping । --- কেবলমাত্র বাস্তবায়ন একটি ম্যাক ঠিকানার পিং করতে পারে তবে এই জাতীয় পিং খুব জটিল: পিনযুক্ত মেশিনটিতে এখনও টিসিপি / আইপি কনফিগার করতে হবে (কমপক্ষে একটি আইপি ঠিকানা) এবং এটি অবশ্যই একটি পিংয়ের প্রতিক্রিয়া জানাতে সক্ষম হতে হবে একটি সম্প্রচার আইপি ঠিকানা।
পাবউক

12

আপনি সাধারণ এনআইসিকে পিং করতে পারবেন না কারণ একা এনআইসি কোনও উত্তর প্রেরণ করে না।

কেবল একটি চলমান কম্পিউটারই উত্তরগুলি প্রেরণ করতে সক্ষম

সাধারণ নেটওয়ার্ক ইন্টারফেস কার্ডগুলি তাদের দ্বারা কোনও জবাব প্রেরণ করে না। এটি করার জন্য তাদের সর্বদা কম্পিউটারে একটি চলমান সফ্টওয়্যার প্রয়োজন।

যখন কম্পিউটারের সিপিইউ চালিত হয় তখন কোনও চলমান সফ্টওয়্যার নেই যা একটি পিংকে একটি উত্তর পাঠায়।

ওয়েক-অন-ল্যান একমুখী is

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

ব্যতিক্রমসমূহ

কিছু বিশেষ এনআইসি রয়েছে যা নিজেরাই উত্তরগুলি পাঠাতে পারে যেমন একটি সম্পূর্ণ টিসিপি হ্যান্ডশেক অফলোড বাস্তবায়নকারীদের জন্য ।


1
+1 - এটিই কেবলমাত্র উত্তর যা ওপির প্রশ্নকে সত্যই সম্বোধন করে। "ওয়েক-অন-ল্যান দিকনির্দেশক"।
সেলেদা

5

ether-wakeকমান্ড তাই নিশ্চয়, ম্যাক ঠিকানা দ্বারা কাজ করবে আপনি (ক) একটি IP ঠিকানা এবং (খ) প্রয়োজন হবে না ক্ষতি ছাড়া কমান্ড পাঠাতে পারেন (যদি এটি ইতিমধ্যে জাগ্রত আছে, নিদ্রাভঙ্গ এটা কোন প্রভাব থাকবে?)

arp -anলক্ষ্য হোস্টের আইপি পেতে আপনার ম্যাকের জন্য গ্রেপিং করে আপনার বিদ্যমান আরপ ক্যাশের তালিকাটি দেখতে পারেন । তবে, আরপটি ক্যাশে হওয়ায় এটি ক্যাশের "সময়সীমা" হয়ে থাকতে পারে (এবং এখনও 'জাগ্রত' থাকুন)। এরপরে আইপিটি খুঁজে পেতে আপনাকে একটি নিষ্ঠুর বল পদ্ধতি ব্যবহার করতে হতে পারে, যেমন:

 sudo nmap -sP 192.168.2.0/24 | less  

(এবং তারপরে 00: 0c: 0d: ef: 02: 03) - প্রদত্ত ফায়ারওয়াল এবং এই জাতীয় জিনিসগুলি যাতে না পায়!


আমি এখনই যন্ত্রটি জাগাতে চাই না। তবে আমি নিশ্চিত করতে চাই যে এনআইসি আমার বার্তাগুলি গ্রহণ করতে পারে যাতে আমি যখন অফসাইটে যাই এবং ডাব্লুএলএল প্যাকেটের মাধ্যমে মেশিনটি চালু করি তখন আমি জানি এটি চালু হতে চলেছে। এজন্য আমি আইপি বা ম্যাকের মাধ্যমে পিং করতে চাই এবং এটি জাগ্রত করতে চাই না।
অ্যালাস্টার মুডি

2
ঘুমন্ত মেশিনগুলি পিংয়ের প্রতিক্রিয়া জানায় না। যদি মেশিনটি চালু থাকে এবং আপনি আইপি দ্বারা পিং করেন (এবং হোস্ট পুনঃস্থাপন করে), এটি আরপ ক্যাশে একটি এন্ট্রি রাখবে। যদি সেখানে প্রবেশের মাধ্যমে হোস্টের ম্যাকের ঠিকানার সাথে মেলে, তবে এটির কার্যকর যুক্তি রয়েছে (অন্যান্য নেটওয়ার্ক ফায়ারওয়ালগুলি, রাউটারগুলি এবং অন্যান্য শারীরিক সমস্যার কারণে এটি ether-wakeনা পৌঁছতে পারে) bar আমি আসলে অন্য হোস্ট অনসাইটে অ্যাক্সেস পাব, ঘুমানোর জন্য লক্ষ্য মেশিনটি রেখেছি এবং চেষ্টা করব ether-wake। ডাব্লুএলএল কীভাবে কাজ করে তার প্রকৃতির দ্বারা অনুরোধটি যেভাবেই হোক হোস্টের মতো একই সাবনেটে প্রেরণ করতে হবে
দ্রা স্লোয়ান

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

প্রথমে পরীক্ষা না করে ডাব্লুএলএল-এর উপর নির্ভর করবেন না। বরং সেই ক্ষেত্রে আইপিএমআই কার্ড পান get
sjas

0

আমার অ্যাপ্লিকেশনটি একটি ওয়ার্কস্টেশনের ডকুমেন্ট ডিরেক্টরি পাওয়ার জন্য একটি ওয়ার্কস্টেশনে গিয়ে সার্ভার আরএসওয়াইএনসিং ছিল ... তবে ওয়ার্কস্টেশনের কোনও গ্যারান্টিযুক্ত আইপি ঠিকানা ছিল না তবে তার একটি পরিচিত ম্যাক ঠিকানা ছিল (আইপি ঠিকানা ডিএইচসিপি দ্বারা সম্পন্ন হয়েছিল)। এই কোডটি কেবল পিং ব্যবহার করে।

export COUNTER=1
while [ $COUNTER -lt 255 ]
do
    #ping $1$COUNTER -c 1 -w 400 | grep -B 1 "Lost = 0" &
    # activate all 254 addresses  in the subnet..  dont really need to grep the ping output
    ping 192.168.0.$COUNTER -c 1 -w 4 2> /dev/null | grep -B 1 ' 0\% packet loss' > /dev/null &
    COUNTER=$(( $COUNTER + 1 ))
done
# wait till 254 background processes finished
wait
# the arp cache will automatically flush it's incomplete entries in about 10 minutes...
#echo "finished"

#
#SRC_SERVER_IP="192.168.0.160:873"
SRC_SERVER_IP=$(arp -a | grep "00:22:4d:81:8f:76" | awk '{print $2}' | sed 's/[()]//g')":873"

if [ $SRC_SERVER_IP == ":873"   ] ; then
    echo  "ws1.example.com is not on the network...  exiting..."
    exit 0
fi

0

ম্যাক ঠিকানার মাধ্যমে পিং করার জন্য এখানে একটি সহজ স্ক্রিপ্ট। যেমন সংরক্ষণ এবং চালানো যেমন
macping aa:bb:cc:dd:ee:ff

আপনি শর্তসাপেক্ষে অন্যান্য কাজ করার জন্য ফলাফলকে ডেইজি চেইনও করতে পারেন, যেমন:

macping aa:bb:cc:dd:ee:ff && echo do something if online || echo do something if offline

-

#!/bin/bash
network=192.168.1.1/24

if [ "$#" -ne 1 ]; then echo Usage example: $0 aa:bb:cc:dd:ee:ff; exit 2; fi;

nmap -sP $network >& /dev/null
ip=$(arp -n | grep $1 | awk ' { print $1 }')
ping $ip -n -q -c 2 -i 0.2 -w 1 >& /dev/null
if [ $? -eq 0 ]; then
    echo Device is online \($ip\)
else
    echo Device is offline
    exit 1
fi;

0

এটি আরপিংয়ের বিভিন্ন সংস্করণ বা জটিল বাশ স্ক্রিপ্টগুলির উপর নির্ভর করে না:

ping $(arp-scan --localnet | grep 80:1f:02:fa:90:b7  | awk ' { printf $1 } ')

আমি আরপ-স্ক্যানটি বরং আরপ-স্ক্যান ব্যবহার করেছি বলে মনে হচ্ছে অনেক দ্রুত চলে run

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