ที่อยู่ IP ของอุปกรณ์เทียบกับเครือข่าย


11

ฉันพยายามเข้าใจความสัมพันธ์ระหว่าง:

  • อุปกรณ์ Linux "เครือข่าย"; และ
  • การ์ด NIC แบบกายภาพตั้งอยู่บนอุปกรณ์นั้น (ให้ความสามารถในการเป็น "เครือข่าย"); และ
  • การเชื่อมต่อต่างๆ Ethernet / Wi-Fi เครือข่าย ( eth0, eth1, wlan0ฯลฯ ); และ
  • ที่อยู่ IP และพอร์ต

จากสิ่งที่ผมได้รวบรวมก็ปรากฏว่าแต่ละอินเตอร์เฟซ (อีกครั้งeth0, eth1, wlan0ฯลฯ ) ที่ได้รับมอบหมาย IP เป็นเอกลักษณ์ของตนเอง ความหมายในเครื่องของฉันeth0จะมี IP wlan1ที่แตกต่างกว่าการพูด

แต่สิ่งนี้ขัดแย้งกับความคิดเห็นของฉันว่าอุปกรณ์เครือข่ายทั้งหมดได้รับ IP เดียวสำหรับอุปกรณ์ทั้งหมด

แล้วมันคืออะไร? อุปกรณ์ได้รับ 1 IP ที่ใช้โดยอินเตอร์เฟสทั้งหมดหรือแต่ละอินเตอร์เฟสได้รับ IP ของตัวเองจริงหรือ ถ้าแต่ละอันมีของตัวเองแล้วอะไรจะเป็นตัวกำหนดจำนวนพอร์ตที่มีอยู่บนอินเตอร์เฟสนั้น


วิธี / สถานที่เชื่อมต่ออินเทอร์เฟซส่งผลกระทบต่อที่อยู่ IP ที่ควรมีเช่นอีเทอร์เน็ต LAN 3 ตัวดังนั้นอินเตอร์เฟสที่ต่างกันจึงมีที่อยู่ที่แตกต่างกัน ที่อยู่นี้จะกลายเป็นที่อยู่เริ่มต้นด้วย
Skaperen

คำตอบ:


10

แต่ละอินเตอร์เฟสเครือข่ายจะมีที่อยู่ IP ของตัวเองหากการรับส่งข้อมูล IP นั้นไหลผ่าน

ยกตัวอย่างเช่นอุปกรณ์เราเตอร์ / โมเด็มที่บ้านและ / หรือสำนักงานขนาดเล็กส่วนใหญ่มี

จะมีการเชื่อมต่อกับคอมพิวเตอร์ / แล็ปท็อปของคุณที่ด้านในของเราเตอร์ - ไม่ว่าจะเป็น WiFi หรืออีเธอร์เน็ต เหล่านี้โดยปกติในช่วงที่อยู่ส่วนตัวของหรือบางครั้ง191.168.0.0 - 192.168.255.254 10.0.0.0 - 10.255.255.254เดสก์ท็อป / แล็ปท็อป / แท็บเล็ตของคุณจะเชื่อมต่อกับด้านนี้ของอุปกรณ์และมีตัวเองและที่อยู่ IP ในช่วงเดียวกัน (แต่ไม่เหมือนกันกับอุปกรณ์)

ที่ด้านนอกของเราเตอร์ / โมเด็มคุณจะมีที่อยู่ IP ที่แยกจากกันอย่างสมบูรณ์โดยปกติแล้วผู้ให้บริการจะจัดสรรให้อุปกรณ์ของคุณโดยอัตโนมัติ นี่เป็นที่อยู่ที่สามารถกำหนดเส้นทางได้98.23.45.62ซึ่งมีลักษณะเป็นสากลสำหรับโมเด็ม / เราเตอร์ของคุณในขณะที่เชื่อมต่อ

โมเด็ม / เราเตอร์ขนาดเล็กเช่นนี้อาจสร้างความสับสนได้เนื่องจากจะมีเพียงที่อยู่เดียว - ที่อยู่ในคู่มือผู้ใช้สำหรับการดูแลอุปกรณ์ผ่านทางเว็บเบราว์เซอร์ (เช่นhttp://192.168.0.1) - ในขณะที่มีพอร์ตอีเทอร์เน็ตจำนวนมาก นี่เป็นเพราะอุปกรณ์ในสาระสำคัญมีสวิตช์เครือข่ายที่ติดแท็กไว้กับเราเตอร์เพื่อแบ่งพอร์ตอีเทอร์เน็ตเดี่ยวของเราเตอร์ออกเป็นหลายพอร์ตและเพื่อเชื่อมต่อกับบริดจ์ WiFi

ในเวลาเดียวกันด้านนอกของเราเตอร์ / โมเด็มจะมีที่อยู่ IP ที่กำหนดค่าโดยอัตโนมัติโดยผู้ให้บริการดังนั้นคุณอาจไม่เคยเห็นมาก่อน (พิมพ์ที่อยู่ IP ของฉันใน Google เพื่อค้นหาว่ามันคืออะไร)

ไดอะแกรมอาจช่วย:

                                                                 +--------+
                                                                 | laptop |
                                                                 +--------+
+-----+                +-------------+              +--------+       | 10.0.0.2
|     |98.23.45.61     |             |10.0.0.1      |        |-------+
| ISP |----------------+ modem/router|--------------| switch |
|     |     98.23.45.62|             |              |        |-------+
+-----+                +-------------+              +--------+       | 10.0.0.3
                                                                  +---------+
                                                                  | desktop |
                                                                  +---------+

อย่างที่คุณเห็นโมเด็ม / เราเตอร์มีที่อยู่ IP สองแห่ง - หนึ่งแห่งสำหรับแต่ละอินเทอร์เฟซเครือข่าย เดสก์ท็อปและแล็ปท็อปมีอุปกรณ์เครือข่ายที่เชื่อมต่อกับเราเตอร์ของคุณ โมเด็ม / เราเตอร์ส่วนใหญ่มีการเชื่อมต่อ WiFi และอีเธอร์เน็ตเช่นเดียวกับแล็ปท็อปส่วนใหญ่ หากคุณต้องเชื่อมต่อสายเคเบิลอีเธอร์เน็ตกับแล็ปท็อปของคุณและเปิดใช้งานและกำหนดค่า WiFi แล็ปท็อปของคุณก็จะมีที่อยู่ IP สองอัน - หนึ่งอันสำหรับแต่ละอุปกรณ์ - ทั้งใน10.0.0.xช่วงที่อยู่ นั่นจะทำให้คุณคิดว่ามีปัญหาอย่าทำอย่างนั้น

พอร์ตเป็นเพียงตัวเลขที่เชื่อมต่อกับที่อยู่ IP ปลายทาง มันคล้ายกับส่วนขยายโทรศัพท์ในแผงสวิตช์สำนักงานและตัดสินใจว่าบริการใดที่จะรับปริมาณข้อมูลของคุณ เป็นตัวเลข 16 บิตซึ่งให้ค่าสูงสุดที่เป็นไปได้ 65535 ชุดย่อยเหล่านี้ใช้เพียงเล็กน้อยเท่านั้น บางส่วนได้รับการจัดสรรล่วงหน้าเช่นพอร์ตที่รู้จักกันดีเช่น http traffic บนพอร์ต 80 และ secure shell (ssh) บนพอร์ต 22 พอร์ตเหล่านี้เปิดเฉพาะและรับฟังการรับส่งข้อมูลหากบริการที่เกี่ยวข้องกำลังทำงานอยู่บนอุปกรณ์ที่ติดตั้งโดยผู้ผลิตอุปกรณ์ .

ในกรณีของเราเตอร์โมเด็มข้างต้นพอร์ต 80 จะรับฟังทางด้านภายในเนื่องจากเว็บเซิร์ฟเวอร์กำลังทำงานเพื่อให้คุณสามารถจัดการอุปกรณ์โดยใช้เว็บเบราว์เซอร์ เราเตอร์บางตัวยังมีบริการ ssh ที่ฟังพอร์ต 22 เพื่อให้คุณสามารถจัดการอุปกรณ์โดยใช้ไคลเอ็นต์ ssh พวกเขาอาจจะเปิดพอร์ต 53 เพราะจะมีเซิร์ฟเวอร์ DNS ที่ทำงานบนเราเตอร์ด้วย

แล็ปท็อปของคุณอาจจะ (หวังว่า) จะไม่มีฟังพอร์ตเว้นแต่ว่าคุณได้ติดตั้งบริการบนอุปกรณ์นั้น ในแผนภาพด้านบนคุณสามารถติดตั้งเซิร์ฟเวอร์เซิร์ฟเวอร์ ssh บนเดสก์ท็อปพีซีที่จุด (และไฟร์วอลล์อนุญาต) เดสก์ท็อปของคุณจะเปิดพอร์ต 22 แล็ปท็อปของคุณสามารถ ssh ไปยังพอร์ต 22 ของเดสก์ท็อปและล็อกอิน

ดังนั้นจำนวนพอร์ตบนอุปกรณ์จะลดลงตามจำนวนเซอร์วิสที่ใช้งานบนอุปกรณ์นั้นการกำหนดค่าของบริการนั้นและการกำหนดค่าไฟร์วอลล์

หากคุณต้องการที่จะทำให้เซิร์ฟเวอร์ SSH ทำงานบนเดสก์ทอปของคุณในตัวอย่างข้างต้นสามารถเข้าถึงได้จากที่ไหนสักแห่งผู้ใช้ระยะไกลบนอินเทอร์เน็ตที่คุณจะตีเป็นปัญหาเล็ก ๆ ถึงแม้ว่าคุณจะมีที่อยู่ภายในเป็นจำนวนมากคุณมีเพียงหนึ่งภายนอก ( 98.23.45.62)

ในการแก้ไขปัญหานี้คุณจะต้องกำหนดค่าสิ่งอำนวยความสะดวกที่เรียกว่าการส่งต่อพอร์ตบนเราเตอร์ของคุณ นี่เป็นการแนะนำให้เราเตอร์ทำการรับส่งข้อมูลทั้งหมดที่มาถึงพอร์ตเฉพาะและส่งต่อไปยังโฮสต์ภายในและพอร์ตเฉพาะ

ในกรณีนี้ทราฟฟิกทั้งหมดที่มาถึงพอร์ต 22 จะถูกส่งต่อไปยัง10.0.0.2พอร์ต 22 ดังที่คุณได้รวบรวมซึ่งหมายความว่าคุณสามารถส่งต่อพอร์ต 22 ไปยังเซิร์ฟเวอร์ภายในหนึ่งเครื่องเท่านั้น

หากคุณต้องการให้ ssh ทั้งเดสก์ท็อปและแล็ปท็อปคุณต้องกำหนดค่าเราเตอร์ให้ฟังบนพอร์ตภายนอกสำรอง (เช่น 2022) และส่งต่อไปยังแล็ปท็อปของคุณที่10.0.0.2พอร์ต 22 ผู้ใช้ระยะไกลจะ ต้องssh 98.23.45.62เข้าถึงเดสก์ท็อปและssh -p 2022 98.23.45.62เข้าถึงแล็ปท็อปของคุณ

แน่นอนว่ามันไม่ง่ายอย่างที่คิดเพราะที่อยู่ IP ภายนอกสามารถเปลี่ยนแปลงได้เว้นแต่ว่าคุณจะขอ / ซื้อที่อยู่ IP แบบคงที่โดยเฉพาะ


ขอบคุณ @garethTheRed (ฉันจะลงคะแนนให้คุณถ้าฉันมีตัวแทนที่จะทำเช่นนั้น) followups รวดเร็วไม่กี่ถ้าคุณไม่ทราบ: คุณสามารถยืนยันได้ว่าการใช้ตัวอย่างที่ดีของคุณข้างต้นถ้าผมไป Google " อะไร IP ของฉัน " ในทั้งแล็ปท็อปและเดสก์ท็พวกเขาทั้งสองจะเห็น IP ของพวกเขาเป็น98.23.45.62(โดยทั่วไป IP ภายนอกของเราเตอร์ทั่วไป) ถ้าเป็นเช่นนั้นถ้าฉันตั้งเซิร์ฟเวอร์ที่ทำงานบนแล็ปท็อปของฉันและต้องการให้สามารถเข้าถึงได้จากโลกภายนอกไคลเอนต์ภายนอก / ระยะไกลจะทำการร้องขอไปยังเซิร์ฟเวอร์นั้นได้อย่างไรถ้ามี IP เดียวกันกับอุปกรณ์อื่น ๆ ทั้งหมดที่อยู่หลังเราเตอร์ ?!? ขอบคุณอีกครั้งมาก!
Zac

ใช่อุปกรณ์ภายในทั้งหมดจะแสดงที่อยู่ IP เดียวกันใน Google ซึ่งเป็นที่อยู่ IP เดียวของคุณ :-) ฉันได้แก้ไขคำตอบของฉันเพื่อครอบคลุมคำถามอื่นของคุณ
garethTheRed

ขอขอบคุณอีกครั้ง @garethTheRed! ดังนั้นจึงยุติธรรมที่จะกล่าวว่าการส่งต่อพอร์ตกำลังทำสิ่งเดียวกันจากภายนอกสู่ภายในเหมือนกับที่ NAT ทำจากภายในสู่ภายนอก
Zac

Vaguely - NAT นั้นมีพลวัตมากกว่าในเรื่องที่ว่า "ใช้งานได้" ผู้ดูแลระบบเราเตอร์จะต้องกำหนดค่าการส่งต่อพอร์ต แต่โดยพื้นฐานแล้วทั้งคู่จะได้รับปริมาณข้อมูลผ่านเราเตอร์
garethTheRed

2

“ อุปกรณ์” เป็นคำที่โอเวอร์โหลด บางครั้งใช้เพื่อหมายถึงเครื่องและบางครั้งก็หมายถึงอุปกรณ์ต่อพ่วงหรือส่วนต่อประสานของเครื่อง

แต่ละอินเตอร์เฟสเครือข่ายมีที่อยู่ของตัวเอง

แต่ละเครื่องมีศูนย์หนึ่งหรือมากกว่าหนึ่งที่อยู่ขึ้นอยู่กับจำนวนเครือข่ายที่มี

ในกรณีอย่างง่ายแต่ละอินเตอร์เฟสเครือข่ายทางกายภาพมีที่อยู่ IP เดียวและระบบของคุณยังมีอินเทอร์เฟซย้อนกลับซึ่งโปรแกรมใช้ในการพูดคุยกับโปรแกรมที่ทำงานบนเครื่องเดียวกัน แต่ละอินเตอร์เฟสมีที่อยู่ IP ที่แตกต่างกัน การตั้งค่าที่ซับซ้อนจำนวนมากนั้นเป็นไปได้ (การเชื่อมโยงนามแฝงที่อยู่ในเครื่องและอื่น ๆ ) แต่ปรีชาพื้นฐานคือแต่ละที่อยู่ IP สอดคล้องกับอินเตอร์เฟสเดียว

เมื่อคุณเข้าถึงเครื่องผ่านเครือข่ายคุณใช้ที่อยู่ IP ดังนั้นในความเป็นจริงคุณจึงสามารถเข้าถึงอินเทอร์เฟซเครือข่ายเฉพาะของเครื่องนั้นได้ ในกรณีส่วนใหญ่ความแตกต่างคือ moot เนื่องจากสามารถเข้าถึงได้เพียงหนึ่งอินเทอร์เฟซจากเครื่องระยะไกลและจะไม่สร้างความแตกต่างใด ๆ เนื่องจากโปรแกรมยอมรับการเชื่อมต่อในทุกอินเตอร์เฟส อย่างไรก็ตามมันเป็นไปได้สำหรับเซิร์ฟเวอร์ที่จะฟังบนอินเทอร์เฟซเดียวเท่านั้น


1

อุปกรณ์ของคุณอาจมีอินเตอร์เฟซเครือข่ายหลายอย่าง ผู้ที่สามารถสอดคล้องกับอุปกรณ์จริง ( NICs ) หรือจะเป็นเสมือน

เพื่อให้สามารถใช้งานได้ (เช่นเริ่มต้นหรือฟังการเชื่อมต่อ) แต่ละอินเตอร์เฟสควรมีที่อยู่ IP โดยปกติจะมีหนึ่ง IP ต่ออินเตอร์เฟซ แต่มันก็เป็นไปได้ที่จะมีหลายทางIP aliasing

การเชื่อมต่อส่วนบุคคลในแต่ละที่อยู่ IP ถูกระบุด้วยหมายเลขพอร์ต มีการ จำกัด พอร์ต 65536 ต่อที่อยู่ IP ที่กำหนดโดยโปรโตคอล IP เหตุผลหนึ่งที่ทำให้นามแฝง IP คือการเอาชนะข้อ จำกัด นี้

ดังนั้นในที่สุดอุปกรณ์ของคุณสามารถมี IP ได้มากเท่าที่คุณต้องการ (ด้วยเหตุผล - ฉันคิดว่ามีข้อ จำกัด ที่กำหนดโดยเคอร์เนลในจำนวนของอินเตอร์เฟสและ IP ที่สามารถจัดการได้) ซึ่งไม่ขึ้นอยู่กับจำนวนอินเทอร์เฟซเครือข่าย อะแดปเตอร์ที่คุณมี บนมืออื่น ๆ , อุปกรณ์ของคุณจะมีอย่างน้อยเป็น IP ที่มากที่สุดเท่าที่มีการเชื่อมต่อเครือข่ายที่ถูกนำมาใช้


0

อุปกรณ์เป็นรายการที่มีอยู่จริงซึ่งแสดงโดยป้ายชื่อภายในระบบ วิธีนี้ระบบสามารถทำการกระทำต่าง ๆ เช่นการตั้งค่า / แบบสอบถาม / การใช้อุปกรณ์ทางกายภาพ ฉลากถูกสร้างขึ้นโดยไดรเวอร์ซึ่งจัดการฮาร์ดแวร์ทางกายภาพที่ระบบเคอร์เนล

ดังนั้นคุณสามารถมีอุปกรณ์เครือข่ายได้หลายตัวโดยแต่ละอุปกรณ์ระบุด้วยป้ายกำกับ uniq (อย่าสับสนกับการพูดถึงพันธะมากเกินไป)

ปัญหาของคุณเกี่ยวกับที่อยู่ IP

มีหลายคลาสที่อยู่ IP ที่แตกต่างกัน คุณมีที่สาธารณะซึ่งสามารถเข้าถึงได้จากทุกที่บนอินเทอร์เน็ตและที่อยู่ส่วนตัวซึ่งมักจะถูก จำกัด ไว้ที่พื้นที่ส่วนตัว (เครือข่ายภายในบ้าน / ธุรกิจสำหรับตัวอย่าง)

โดยปกติเครือข่ายในบ้านหรือเครือข่ายสำนักงานจะมีที่อยู่ IP สาธารณะและที่อยู่ส่วนตัวจำนวนมาก (ระหว่างแล็ปท็อป / มือถือ / แท็บเล็ต / ตู้เย็น / เครื่องปิ้งขนมปัง / ของสมาชิกทุกคนในครอบครัว)

คุณสามารถกำหนดที่อยู่ IP ให้กับฮาร์ดแวร์ทางกายภาพได้ แต่คุณต้องทำอย่างดีและเคารพตรรกะ tcp / ip พื้นฐานหากคุณไม่ต้องการเผชิญกับปัญหาที่แยกไม่ออก :)

สำหรับตัวอย่างในเครือข่ายท้องถิ่น (LAN) คุณไม่สามารถมีฮาร์ดแวร์สองตัวที่มีที่อยู่ IP เดียวกัน นี่คือสาเหตุส่วนใหญ่เนื่องจากโปรโตคอลอีเธอร์เน็ตซึ่งเป็นฐานที่อยู่ MAC (ตัวระบุ uniq ของฮาร์ดแวร์) และมีความสัมพันธ์แบบหนึ่งต่อหนึ่งระหว่างที่อยู่ MAC และที่อยู่ IP บนเครือข่ายท้องถิ่น

คุณยังสามารถมีเครื่องหนึ่งเครื่องโดยมีฮาร์ดแวร์สองเครื่องพร้อมที่อยู่สาธารณะจากผู้ให้บริการของคุณและอีกเครื่องหนึ่งในเครือข่ายท้องถิ่นของคุณ เครื่องนี้มักจะใช้เป็นประตูสู่โลกภายนอกสำหรับเครื่องทั้งหมดในเครือข่ายท้องถิ่นของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.