मैं IPv6 का उपयोग करके लोकलहोस्ट को कैसे पिंग करूं?


22

मैं IPv6 को बेहतर तरीके से समझने की कोशिश कर रहा हूं ।

सबसे पहले, मैं ifconfig का प्रयास करता हूं , और मुझे निम्नलिखित मिलते हैं:

eth0      Link encap:Ethernet  HWaddr XXXXXXX
          inet addr:X.X.X.X  Bcast:X.X.X.X  Mask:XXXXXXXXX
          inet6 addr: XXXX::XXXX:XXX:XXXX:XXX/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:138752772 errors:0 dropped:0 overruns:0 frame:0
          TX packets:67894054 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:67347428211 (67.3 GB)  TX bytes:168368922639 (168.3 GB)
          Interrupt:43

इसलिए ऊपर से मैं मान सकता हूं कि आईपीवी 6 सक्षम है (अगर मैं यहां गलत हूं तो मुझे सुधारें)।

अब अगर मैं उपयोग ping localhostकरूँ तो मुझे मिलेगा:

64 bytes from localhost (127.0.0.1): icmp_req=1 ttl=64 time=0.026 ms
64 bytes from localhost (127.0.0.1): icmp_req=2 ttl=64 time=0.019 ms
64 bytes from localhost (127.0.0.1): icmp_req=3 ttl=64 time=0.025 ms
...

लेकिन जब मैं उपयोग करता ping6 localhostहूं तो मुझे मिलता है:

unknown host

मैं कैसे उपयोग ping6करूं? या अधिक विशेष रूप से, ping6 localhostकाम करने के लिए क्या परिवर्तन करने की आवश्यकता है (यदि संभव हो तो)?


3
यदि आप लिनक्स पर हैं, तो आपको आमतौर पर बचना चाहिए ifconfigऔर route- पसंद करें ip addrऔर ip route, जो अधिक नेटवर्किंग सुविधाओं का समर्थन करें और अधिक सुसंगत आउटपुट दें।
ग्रिटिटी

टिप मेट के लिए @grawity thx, बहुत उपयोगी
nafas

जवाबों:


15

संक्षिप्त उत्तर [ rcf4291 ]

ping6 ip6-localhost    # Or the alias you have in /etc/hosts file (See below)
ping6 0:0:0:0:0:0:0:1  # Similar to `ping 127.0.0.1` with 7 `:` instead of 4 `.`
ping6 ::1              # The used analogous of `ping 127.0.0.1`

काम करने के लिए परिवर्तन ping6 localhost

यदि आप सेट करना चाहते हैं localhostदोनों के लिए उपनाम के रूप में pingऔरping6 और यह आपकी मशीन पर पहले से ऐसा नहीं है, यह में लिखने के लिए पर्याप्त है /etc/hostsफ़ाइल दोनों लाइनों:

127.0.0.1       localhost
# ... and below
::1             localhost ipv6-localhost ipv6-loopback

आपके सिस्टम पर वर्तमान में उपयोग किए जाने वाले उपनामों के लिए यह चिंता करता है कि आप अपने होस्ट फ़ाइल की जांच कर सकते हैं, /etc/hosts [ 1 ] या अलग जगह पर [ ]
आप पा सकते हैं ip6-localhost, ip6-loopback, ipv6-localhost, ipv6-loopbackया localhostखुद को ...


कुछ शब्द और

मैं आपके भ्रम को वास्तव में "विशेष-उपयोग डोमेन नाम" 6.3 [ 3 ] के बारे में rfc6761 से पढ़ता हूं , के लिए स्थानीय नाम के बारे में ,

उपयोगकर्ता मान सकते हैं कि IPv4 और IPv6 एड्रेस लोकलहोस्ट नामों के लिए क्वेरी हमेशा संबंधित आईपी लूपबैक पते पर हल होंगे

इसलिए यह डिफ़ॉल्ट रूप से अपेक्षित होना चाहिए लेकिन:

  • वर्तमान अद्यतन और अछूता Ubuntu 14.04.3 LTS पर /etc/hosts मुझे निम्न अनुभाग मिला ip6-localhost,ip6-loopback

    # The following lines are desirable for IPv6 capable hosts
    ::1     ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastprefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters
    
  • एक पर Suse एंटरप्राइज 10 प्रणाली मैंने पाया localhost, ipv6-localhost,ipv6-loopback

    # special IPv6 addresses
    ::1             localhost ipv6-localhost ipv6-loopback
    
  • एक पुराने पर डेबियन GNU / लिनक्स 8.2 प्रणाली localhost, ip6-localhost,ip6-loopback

    # The following lines are desirable for IPv6 capable hosts
    ::1     localhost ip6-localhost ip6-loopback
    

इसका मतलब है कि, मेरे सीमित अनुभव में, आपको अपनी /etc/hostफ़ाइल में देखना चाहिए और इसे संशोधित करना चाहिए या उपयोग करना होगा जो आप कर पाएंगे, उदाहरण के लिए,

ping6 ipv6-localhost   # On some systems (maybe on Suse) 
ping6 ip6-localhost    # On some systems (maybe on Debian/*buntu)

बहुत विस्तृत जवाब धन्यवाद, मुझे क्या चिंता है, हमें बहुत जल्द ही और फिर भी ipv6 का उपयोग करने की आवश्यकता होगी, बहुत बाधाएं हैं (यह स्थानीयहोस्ट की तुलना में कोई भी सरल नहीं मिल सकता है) और कोई स्टैंडराइजेशन नहीं है। मुझे लगता है कि जब तक हम इसके बारे में कुछ नहीं करेंगे, यह बहुत परेशानियों का कारण बनता है ...
nafas

जैसा कि आपने ::1उन मशीनों में से प्रत्येक पर काम देखा है ... "मानकों के बारे में अच्छी बात यह है कि आपके पास चुनने के लिए बहुत सारे हैं।" ASTanenbaum [ 1 ] :-) एक समाधान मिल जाएगा ... शायद गलत एक! ;)
हस्तूर

, मैं पूरी तरह से यह दोस्त मिलता है। ::1IP (v6) है, जहां जैसा localhostहै hostname। पूरी तरह से मेरी राय है, लेकिन मेरा मानना ​​है कि अगर हम मानक नहीं रखते हैं, तो हम निकट भविष्य में कई मुद्दों का सामना करेंगे। मुझे वास्तव में उम्मीद है कि एक बार ipv6 ओवरटेक करने के बाद हमें ipv6.google.comइसके बजाय टाइप करने की ज़रूरत नहीं हैgoogle.com
nafas

1
यह स्पष्ट था कि आप इसे प्राप्त करते हैं :-) ... BTW RFC 6761 (विशेष-उपयोग डोमेन नाम) ने फरवरी, 2013 में प्रस्तावित मानक परिपक्वता स्तर हासिल किया। ... इसलिए अभी भी मानक के रूप में इसे देखने की उम्मीद करने का समय है बहुत देर हो जाएगी।
Hastur

1
@nafas उन्होंने IPv6 को जोड़ा है google.com
मैट नॉर्डहॉफ

24

प्रयत्न:

ping6 ::1

परिणाम इस तरह दिखेगा:

# ping6 ::1
PING ::1(::1) 56 data bytes
64 bytes from ::1: icmp_seq=1 ttl=64 time=0.040 ms
(...)
64 bytes from ::1: icmp_seq=9 ttl=64 time=0.037 ms
^C
--- ::1 ping statistics ---
9 packets transmitted, 9 received, 0% packet loss, time 7998ms
rtt min/avg/max/mdev = 0.035/0.042/0.055/0.011 ms

Ubuntu 14.04.1 LTS (भरोसेमंद तहर):

# ping ::1
ping: unknown host ::1
# ping -6 ::1
ping: invalid option -- '6'
Usage: ping [-aAbBdDfhLnOqrRUvV] [-c count] [-i interval] [-I interface]
        [-m mark] [-M pmtudisc_option] [-l preload] [-p pattern] [-Q tos]
        [-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp_option]
        [-w deadline] [-W timeout] [hop1 ...] destination
# ping -V
ping utility, iputils-s20121221

(उसी के लिए ping6 -V।)


6
नए संस्करणों की iputilsकोई अलग ping6उपयोगिता नहीं है, इसके साथ विलय हो गया ping। उन संस्करणों के लिए, उपयोग ping -6 ::1(या ::1एक IPv4 पता नहीं है) ping ::1
लेकेनस्टेन

1
@Lekensteyn कौन सा? नवीनतम संस्करण, -6मान्यता प्राप्त भी नहीं है।
edmz

@black: आप किस संस्करण को "नवीनतम" मानते हैं? ping और ping6 को iputils-s20150815 (check ping -V) में मिला दिया गया था । आपके डिस्ट्रो ने अभी तक अपग्रेड नहीं किया है। (और बीएसडी के पास अपना खुद का सॉफ्टवेयर है और iputils का उपयोग नहीं करते हैं।)
grawity

@grawity: मेरे पास नवीनतम संस्करण है, हालांकि यह वास्तविक नवीनतम संस्करण नहीं है और यह वास्तव में OOD है, यहां तक ​​कि आर्क लिनक्स (20140519) पर भी।
edmz

@black: "नवीनतम लेकिन वास्तविक नवीनतम नहीं"? ... वैसे भी, आर्क ने एक महीने से अधिक समय के लिए [परीक्षण] में iputils-20150815 किया है, हालांकि मुझे नहीं पता कि यह कब स्थिर होने वाला है।
विशालकाय

9

localhostवह होस्टनाम है जो 127.0.0.1पते पर हल करता है । आपकी /etc/hostsफ़ाइल की ::1संभावना के लिए एक अलग प्रविष्टि होनी चाहिए localhost6। तो ये आज़माएँ:

ping6 ::1
ping6 localhost6

7
एक होस्टनाम एक ही बार में कई पते पर हल कर सकता है - खासकर यदि वे अलग-अलग प्रोटोकॉल से हैं। अधिकांश सिस्टम दोनों केlocalhost लिए उर्फ और । 127.0.0.1::1
विशालकाय

1
@ मैं localhostआईपीवी 6 के लिए उपयोग किए गए किसी भी सिस्टम की जांच नहीं करता । नाम मैं के लिए इस्तेमाल किया पाया ::1थे ip6-localhost, ip6-loopback, localhost6, और localhost6.localdomain6
कैस्परर्ड

3
@kasperd, एक Gentoo से /etc/hosts: 127.0.0.1 localhost, ::1 localhost; Windows Vista समान है (फ़ाइल डालने के अलावा C:\Windows\System32\drivers\etc)। MacOSX 10.9.5 fe80::1%lo0 localhostइसके लिए तीसरे नाम के रूप में जोड़ता है।
मार्क

3
@kasperd: आपने तब कई सिस्टम का उपयोग नहीं किया है। विंडोज, आर्क, सेंटोस, उबंटू सभी मैप localhostटू ::1। (मुझे लगता है कि इस के रूप में distros systemd और nss_myhostname सक्षम अपनाने और भी अधिक आम होने जा रहा है।)
grawity

2
CentOS 6 में लोकलहोस्ट 6 के रूप में :: 1 है, हालांकि CentOS 7 में दोनों के लिए लोकलहोस्ट है। OpenWRT, Xucerver, और Solaris में किसी भी IPv6 प्रविष्टियों का अभाव है।
qasdfdsaq
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.