2 রাউটারের পিছনে ল্যানে রিমোট ওয়েক


0

আমি গত 3 দিন ধরে আমার সমস্যার সমাধান খুঁজছি কিন্তু কিছুই এখনও কার্যকর হয়নি।

লক্ষ্য

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

আমার নেটওয়ার্ক সেটআপ

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

সমাধানগুলি আমি চেষ্টা করেছিলাম

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

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

#!/bin/sh
#Enable JFFS2 and place script in /jffs/ then run on startup in web interface.
#You can check the log from http://192.168.2.1/user/wol.html

INTERVAL=1
PINGTIME=1
OLD=""
PORT=32400
WOLPORT=9
TARGET=192.168.2.4
BROADCAST=192.168.2.255
MAC=00:1f:5b:32:c6:0c
WOL=/usr/sbin/wol
LOGFILE="/tmp/www/wol.html"

echo "<meta http-equiv=\"refresh\" content=\"10\">" > $LOGFILE
echo "AUTO WOL Script started at" `date` "<br>" >> $LOGFILE

while sleep $INTERVAL;do
NEW=`dmesg | awk '/ACCEPT/ && /DST='"$TARGET"'/ && /DPT='"$PORT"'/ {print }' | tail -1`
SRC=`dmesg | awk -F'[=| ]' '/ACCEPT/ && /DST='"$TARGET"'/ && /DPT='"$PORT"'/ {print $7}' | tail -1`
LINE=`dmesg | awk '/ACCEPT/ && /DST='"$TARGET"'/ && /DPT='"$PORT"'/'`

if [ "$NEW" != "" -a "$NEW" != "$OLD" ]; then                                               
   if ping -qw $PINGTIME $TARGET >/dev/null; then                                                 
      echo "NOWAKE $TARGET was accessed by $SRC and is already alive at" `date` "<br>">> $LOGFILE    
   else                                                                                        
      echo "WAKE $SRC causes wake on lan at" `date` "<br>">> $LOGFILE                         
      $WOL -i $BROADCAST -p $WOLPORT $MAC >> $LOGFILE                                             
      echo "<br>" >> $LOGFILE                                                                  
      sleep 1                                                                                 
   fi                                                                                          
   OLD=$NEW                                                                                  
fi                                                                                                                                                                               
done

আমি স্ক্রিপ্টটি কনফিগার করেছি, সঞ্চিত /tmp/www/wol.htmlলগটিতে স্ক্রিপ্টের সময় লুপের আগে দুটি ইকো কমান্ডের আউটপুট থাকে।

আমি মনে করি এটি ডিডি-আর্ট লগগুলির একটি সমস্যা, আমি সেগুলি পরিদর্শন করেছি এবং তারা আইপি ঠিকানা বা পোর্ট সম্পর্কে কোনও তথ্য রাখবে না বলে মনে হচ্ছে:

Sep  1 16:58:00 DD-WRT user.info : dhcpfwd : dhcp forwarder daemon successfully started
Sep  1 17:00:00 DD-WRT user.info : dhcpfwd : dhcp forwarder daemon successfully started
Sep  1 17:02:01 DD-WRT user.info : dhcpfwd : dhcp forwarder daemon successfully started
Sep  1 17:04:00 DD-WRT user.info : dhcpfwd : dhcp forwarder daemon successfully started
Sep  1 17:06:00 DD-WRT user.info : dhcpfwd : dhcp forwarder daemon successfully started
Sep  1 17:06:39 DD-WRT daemon.info hostapd: ath0: STA ac:cf:85:a1:f0:1b IEEE 802.11: disassociated due to inactivity
Sep  1 17:06:40 DD-WRT daemon.info hostapd: ath0: STA ac:cf:85:a1:f0:1b IEEE 802.11: deauthenticated due to inactivity (timer DEAUTH/REMOVE)
Sep  1 17:06:45 DD-WRT daemon.info hostapd: ath0: STA fc:3f:7c:8b:0c:71 IEEE 802.11: disassociated due to inactivity
Sep  1 17:06:46 DD-WRT daemon.info hostapd: ath0: STA fc:3f:7c:8b:0c:71 IEEE 802.11: deauthenticated due to inactivity (timer DEAUTH/REMOVE)
Sep  1 17:07:08 DD-WRT auth.info login[1874]: root login on 'pts/0'

স্ক্রিপ্ট কেন কাজ করছে না কেউ জানে? আপনার কি কোনও বিকল্প সমাধান আছে?


আমার বোধ হয় আপনি কীভাবে পোর্ট নম্বর ব্যবহার করছেন তা যাচাই করে নেওয়া উচিত। 32400 কি? এটিকে কি প্রবাহের রাউটার থেকে ডাউন স্ট্রিম রাউটারে ফরোয়ার্ড করা দরকার? আপনি মাঝে মাঝে 7 বন্দর, এবং অন্যান্য বার 9 ব্যবহার করছেন কেন? 9 (বাতিল করা) হ'ল traditionতিহ্যগতভাবে বন্দরের লোকেরা আইপি-ভিত্তিক ডাব্লুএলএল ব্যবহার করে।
স্পিফ

আমি যখন বিভিন্ন সমাধান চেষ্টা করছিলাম তখন আমি একাধিকবার পোর্টটি স্যুইচ করেছি। যদিও শেষ পর্যন্ত আমি একটি সমাধান পেয়েছি, আমি বাড়ি এলে উত্তর হিসাবে এটি পোস্ট করব। যাইহোক আপনাকে ধন্যবাদ!
রান 3000

উত্তর:


0

ঠিক আছে, আমি শেষ পর্যন্ত একটি সমাধান খুঁজে পেয়েছি।

প্রাথমিক রাউটারে আমি ইউডিপি ট্র্যাফিক 9 নং বন্দরে আসা মাধ্যমিক রাউটারে ফরোয়ার্ড করি।

আমি দ্বিতীয় রাউটারের জন্য ডিডি-আরআরটি-তে সিসলোগড এবং ফায়ারওয়াল লগিং সক্ষম করেছি, সেই লগগুলি ফাইলটিতে সংরক্ষিত হয়েছে: / proc / নেট / ip_conntrack

আমি এই স্টার্টআপ স্ক্রিপ্টটি ডিডি-আর্টিতে যুক্ত করেছি:

#! /bin/sh 

WOL=/usr/sbin/wol 
MAC_VMC=cd:6e:a2:32:87:6v 
BCAST=192.168.2.255 
LOGFILE="/tmp/www/wol.html"

echo "AUTO WOL Script started at" `date` "<br>" >> $LOGFILE

while sleep 5 ; do 
 if [ `egrep -c udp.+dport=9 /proc/net/ip_conntrack` -gt 0 ] ; then 
  echo "Sending Magic Packet at" `date` >> $LOGFILE
  $WOL -i $BCAST -p 7 $MAC_VMC 
  sleep 120
 fi 
done

এটি ট্র্যাফিক লগ ফাইলটি দেখে এবং 9 পোর্টে ইউডিপি ট্রাফিক দেখলে এটি ডিডি-আরআরটি ওয়াল কমান্ডটি ব্যবহার করে আমার হোম কম্পিউটারটি জাগিয়ে তোলে।

এটি পুরোপুরি দূরবর্তী অবস্থান থেকেও কাজ করে, আমার একমাত্র উদ্বেগ সুরক্ষা।

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