كيف يمكنني العثور على عنوان بروتوكول الإنترنت الداخلي الخاص بي?

لدي خادم أوبونتو 12.04 تثبيت ، لذلك ليس لدي واجهة المستخدم الرسومية. عندما أفعل الأمر إفكونفيغ ، لا أستطيع العثور على عنوان إب الداخلي. وتقول آينت أدر: 127.0.0.1.

هنا هو إخراج ifconfig -a:

eth0   link encap:Ethernet  HWaddr 00:06:4f:4a:66:f0    BROADCAST MULTICAST  MTU:1500  Metric:1    RX packets:0 errors:0 dropped:0 overruns:0 frame:0    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0    collisions:0 txqueuelen:1000    RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)eth1   link encap:Ethernet  HWaddr 00:16:ec:05:c8:9c     BROADCAST MULTICAST  MTU:1500  Metric:1    RX packets:0 errors:0 dropped:0 overruns:0 frame:0    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0    collisions:0 txqueuelen:1000    RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)lo     Link encap:Local Loopback    inet addr 127.0.0.1  Mask:255.0.0.0    inet6 addr:  ::1/128 Scope:Host    UP LOOPBACK RUNNING MTU:65536  Metric:1    RX packets:1800 errors:0 dropped:0 overruns:0 frame:0    Tx packets:1800 errors:0 dropped:0 overruns:0 carrier:0    collisions:0 txqueuelen:0    RX bytes:143896 (143.b KB)  TX bytes:143896 (143.8 KB)

وهنا محتويات الخ / شبكة / واجهات:

# The loopback network interfaceauto loiface lo inet loopback# The primary network interfaceauto eth0iface eth0 inet dhcp

إذا كان شخص ما يمكن تحرير هذا بالنسبة لي ، يجب أن تكون محتويات الخ / شبكة / واجهات على خطوط منفصلة.

إخراج المضيف askubuntu.com كان:

;; connection timed out; no servers could be reached.

أنا إعداد أونكلود و ويبمين قبل بضعة أشهر وكان استخدامها لمدة شهر مع أي مشاكل. أعتقد أن السلطة انفجرت يوم واحد 2 منذ أشهر وأنا لم تحول الخادم مرة أخرى حتى يوم أمس. لم أفعل أي شيء من شأنه أن يؤثر على إعداد الإنترنت ، لذا لست متأكدا من سبب عدم نجاحه بعد الآن. بقدر ما يذهب طوبولوجيا الشبكة الخاصة بي ، لدي بطاقة شبكة يسي-ه للكمبيوتر. ينتقل خط إيثرنت من بطاقة الشبكة إلى مفتاح ، ثم إلى مودم/جهاز توجيه من هناك.

hostname -I

هذا وسوف تعطيك عنوان إب فقط دون أي معلومات إضافية.

ستخبرك هذه الأوامر بجميع معلومات الشبكة

ip add

أو

ifconfig -a

إذا كنت تقول أنه يمنحك فقط 127.0.0.1 ثم هناك خياران:

  1. بطاقة الشبكة الخاصة بك غير مرفقة أو غير معترف بها من قبل النظام

  2. لا يتم تشغيل خادم دكب الشبكة أو غير متصل

هذا ما أوصي به حاليا:

ip route get 8.8.8.8 | awk '{print $NF; exit}'

وميزة هذا الأمر هو أن لم يكن لديك لمعرفة أي واجهة كنت تستخدم (روح0? ايث1? أو ربما شبكة ولان 0?) ، لم يكن لديك لتصفية عناوين المضيف المحلي ، أو عناوين عامل الميناء ، أو الأنفاق فين الخ. وسوف تحصل دائما عنوان بروتوكول الإنترنت المستخدم حاليا لاتصالات الإنترنت في تلك اللحظة بالذات (المهم عندما على سبيل المثال كنت متصلا مع كل من إيثرنت وواي فاي أو عبر فين الخ.).

وهذا اختبار ليس فقط أن لديك إب الصحيح تكوين على بعض واجهة (مثل مع تحليل إخراج ifconfig) ولكن أيضا أن لديك جدول التوجيه تكوين لاستخدامها بشكل صحيح.

لقد وجدت هذه الفكرة في هذه الإجابةبواسطة كولين أندرسون.

أنا استخدامها في الداخلية السيناريو في بلدي مخطوطات جمع على جيثب، والتي يمكنك تثبيتها مع:

wget https://rawgit.com/rsp/scripts/master/internalipchmod a+x internalip

واستخدام كما:

internalip

أو:

internalip TARGET

وسوف تحصل على عنوان إب الخاص بك التي سيتم استخدامها للاتصال مع عنوان إب الهدف. الهدف الافتراضي هو 8.8.8.8 وهو محلل نظام أسماء النطاقات العام من غوغل والافتراضي جيد للإنترنت.

ولكن إذا قمت بتشغيله مع إب مختلفة:

internalip 127.2.3.4

ثم سوف تحصل:

127.0.0.1

لأن هذا هو عنوان إب الخاص بك التي سيتم استخدامها للاتصال مع 127.2.3.4 على واجهة الاسترجاع. انها مفيدة عندما يكون الهدف الخاص بك على الشبكة المحلية ، فين أو شبكة خاصة أخرى ، وفي هذه الحالة بعض إب الأخرى يمكن استخدامها للاتصالات من إب الافتراضي للوصول إلى الإنترنت.

الملكية الفكرية الخارجية

للتحقق الخاص بك الخارجية عنوان إب (الذي تراه الخوادم على الإنترنت عند الاتصال بها - والذي قد يكون مختلفا عن عنوان إب الداخلي الموصوف هنا) انظر هذه الإجابة.

وأعتقد أنه من الجدير بالذكر أن تشغيل إفكونفيغ جنبا إلى جنب مع-خيار سيتم عرض جميع واجهات الطقس أو لا واجهة لديها إب.

تشغيل إفكونفيغ وحدها ، سيتم عرض واجهات فقط مع إيبس المعينة.

هنا هو خدعة لطيفة يمكنك استخدامها لعرض إيبس فقط باستخدام بيرل.

# ifconfig | perl -nle'/dr:(\S+)/ && print $1'192.168.1.100127.0.0.1

يتم التعرف على بطاقة الشبكة الخاصة بك من قبل النظام ، وهذا هو السبب في ظهورها إيث0 و إيث1

هنا هو وسيلة سريعة لتعيين إب إلى واجهة الخاص بك ، واستخدام إب/الشبكة الفرعية صالحة وفقا لذلك.

 ifconfig eth0 192.168.1.200/24 up 

ثم نحتاج إلى إضافة مسار افتراضي

route add default gw 192.168.1.1

الأفضل,

سيعرض هذا الأمر جميع عناوين إب لجهاز واحد:

dev=eth0ip addr show $dev | awk '/inet/ {print $2}' | cut -d/ -f1

فإنه سيتم طباعة واحد أو سطرين من الانتاج. أول واحد هو عنوان إينت / إيبف 4 والآخر هو إينت 6 / إيبف 6 إذا تم تكوين النظام الخاص بك لدعم هذا.

في حالة ، فإن ifconfig الأمر لم يعرض عنوان إب ، هناك طريقة بسيطة جدا وسهلة لمعرفة عنوان إب من آلة أوبونتو من خلال واجهة المستخدم الرسومية. اتبع الخطوات أدناه:

انقر فوق رمز الشبكة في منطقة الإعلام وانقر معلومات الاتصال.Network icon options

هذا إحضار نافذة التي لديها بعض المعلومات ، بما في ذلك عنوان إب.IP address information

هناك الكثير من الإجابات الجيدة هنا للاختيار من بينها بالفعل ، لكنني اعتقدت أنني سأشير إلى فاكتر والتي عادة ما تكون ، ولكن لا تستخدم بالضرورة مع دمية لجمع الحقائق المختلفة حول النظام. والميزة الرئيسية لفاكتر هو أنه يعطي الانتاج نظيفة لطيفة مما يوفر لك كل التلاعب مع grep, sed, awk, cut, perl، إلخ. انها لن اقول لكم أي واجهة كنت مهتما، ولكن إذا كنت تعرف ذلك ، ثم ما يلي يعطيك إب دون غيرها من كروفت لتنظيف:

facter ipaddress_eth0 

قيادة الملكية الفكرية

وهنا الاختلاف على ip addr الطريق.

ip لديه -o الخيار الذي يسمح بوضع جميع المعلومات على سطر واحد-وهذا مفيد للتحليل باستخدام أدوات مثل awk أو perl. بالاشتراك مع -4 الخيار ، سوف نرى فقط عناوين إيبف 4. وبالتالي ، فإن الإخراج يكون شيئا من هذا القبيل (ملاحظة-استبدال ولان 7 مع واجهة تريد التحقق):

$ ip -4 -o addr show wlan73: wlan7    inet 192.168.0.78/24 brd 192.168.0.255 scope global dynamic wlan7\       valid_lft 85654sec preferred_lft 85654sec

كما ترون ، عنوان إب هو العمود 4 / كلمة في الإخراج. الباقي ، هو تمرين تحليل بسيط عبر أداة من اختيارك. هنا ، أنا باستخدام بيثون:

ip -4 -o addr show wlan7 | python -c "import sys;print sys.stdin.readlines()[0].split()[3]" 

نفس الشيء ، فقط مع سلسلة هنا <<< واستبدال الأوامر $()

python -c "import sys;print sys.stdin.readlines()[0].split()[3]"  <<< $(ip -4 -o addr show wlan7)

شخصيا ، لدي هذا حفظها بوصفها وظيفة لطيفة في بلدي ~/.bashrc لذلك يتم كتابة أقل.

wlan_ip() {    ip -4 -o addr show wlan7 | python -c "import sys;print sys.stdin.readlines()[0].split()[3]" } 

نسخة بيرل وروبي أقصر قليلا:

$ ip -4 -o addr show  wlan7 | perl -lane 'print $F[3]'                         192.168.0.78/24$ ip  -4 -o addr show wlan7 | ruby -n -e 'print $_.split()[3]'                 192.168.0.78/24

يريشارك

إذا كنت على دراية باستخدام أدوات تحليل الشبكة ، وربما كنت أعرف أن للحصول على عنوان إب الخاص بك ، كل ما عليك القيام به هو مسح ذاكرة التخزين المؤقت للمتصفح ، بدء التقاط ويريشارك على واجهة محددة ، والبحث عن هتب GET الحزم التي يتم إرسالها. سيظهر عمود الوجهة عنوان بروتوكول الإنترنت الخاص بك

هناك الكثير من المعلومات الجيدة أعلاه. أبقيها بسيطة مثل ذلك:

# what your computer thinks its ip address isfunction iplocal() {  ip route get 8.8.8.8 | awk '{print $NF; exit}'    # 8.8.8.8 is google dns}# what the outside world thinks your ip address isfunction ipexternal() {  curl --silent http://checkip.amazonaws.com        # or:  http://ipinfo.io/ip}function ipinfo() {  echo "local    IP  =>  $(iplocal)"  echo "external IP  =>  $(ipexternal)"}

استخدام العينة:

> ipinfolocal    IP  =>  192.168.1.139external IP  =>  76.88.85.95

'إفكونفيغ | البقرى ز" 192.168.*.255 "/ كت-د ‘’- إف 10 ‘يمكن أن تحصل على إب، أو ببساطة’ اسم المضيف-أنا / كت-د` ‘- إف 1’

@أفاتاربارتو تلك هي للواجهات التي تواجه وصول الجمهور ، وهذا السؤال هو حول الشبكات الداخلية…

بدافع الفضول, ماذا ` / الخ / شبكة / واجهات ’ يكون في ذلك?

أنا أعرف كيفية استخدام الأمر تغيير الدليل, ولكن أنا لا أعرف كيفية سرد الملفات مرة واحدة هناك, كيف أفعل هذا?

‘ليرة سورية’ سوف قائمة الملفات في الدليل. ليرة سورية-ل ' سوف تعطي قائمة مفصلة. لسرد محتويات دليل معين ‘ليرة سورية-ل / الخ / شبكة’. لتغيير إلى دليل وقائمة محتويات ’ سد / الخ / شبكة ؛ لس-ل. لقراءة محتويات 'الخ / شبكة / واجهات' (هذا هو ملف) سودو بيكو /الخ/شبكة/واجهات. (بيكو` هو محرر نص خفيف الوزن-جيدة للقراءة والتحرير الأساسي ، وأقل تخويف من ‘السادس’.)