คำสั่งของการคัดค้าน ifconfig อยู่ที่ไหน (บน linux)?


41

ผู้คนจำนวนมากกำลังระบุว่าifconfigคำสั่งถูกคัดค้านipอย่างใดอย่างหนึ่ง (บน linux อย่างน้อย)

สิ่งนี้มักจะถูกใช้เป็นอาร์กิวเมนต์เพื่อเปลี่ยนจากifconfigเป็นip(ดูความคิดเห็นและคำตอบของฉันควรเลิกใช้ Ifconfig? )

เราจะหาคำแถลงเกี่ยวกับเรื่องนั้นได้ที่ไหน (เช่นมันระบุไว้ที่ไหนว่าifconfigจะไม่รองรับในอนาคต)


15
หน้าคนสำหรับหนึ่ง
Michael Hampton

5
จะเป็นเหมือนฉัน ... ใช้ ipconfig ตราบเท่าที่คุณสามารถ ... จนกว่าคุณจะไม่สามารถ สิ่งเดียวกันสำหรับ IPv6!
ewwhite

3
@ewwhite RHEL 7 ไม่ได้ติดตั้งเครื่องมือ net โดยค่าเริ่มต้น ขอให้โชคดี
Michael Hampton

4
@MichaelHampton ไม่ได้อยู่ในmanหน้าของฉัน
Izkata

3
@ewwhite: คุณใช้ Windows หรือไม่
slebetman

คำตอบ:


30

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

Luk Claes และฉันในฐานะผู้ดูแลเครื่องมือสุทธิเรากำลังคิดถึงอนาคตของมัน Net-tools เป็นส่วนสำคัญของ Debian และลินุกซ์ที่ใช้ระบบ distro อื่นเป็นเวลาหลายปี แต่มันแสดงอายุของมัน

มันไม่รองรับฟีเจอร์ที่ทันสมัยมากมายของเคอร์เนล linux, อินเทอร์เฟซอยู่ไกลจากที่ดีที่สุดและยากที่จะใช้ในการทำให้เป็นอัตโนมัติและยังไม่ได้รับความรักมากในปีที่ผ่านมา

อีกด้านหนึ่งชุด iproute ซึ่งเปิดตัวรอบ ๆ เคอร์เนล 2.2 มีทั้งอินเตอร์เฟสที่ดีกว่าและสอดคล้องกันมีประสิทธิภาพมากกว่าและมีอายุเกือบสิบปีดังนั้นจึงไม่มีใครบอกได้เลยว่ามันไม่ได้ทดสอบ

ดังนั้นแผนของเราคือการแทนที่เครื่องมือสุทธิอย่างสมบูรณ์ด้วย iproute อาจนำเส้นทางสำหรับการกระจายอื่น ๆ ที่จะปฏิบัติตาม แน่นอนว่าผู้คนและเครื่องมือส่วนใหญ่ใช้และจดจำอินเทอร์เฟซเก่าที่น่าเคารพดังนั้นขั้นตอนแรกคือการเขียนคำว่า wrappers พยายามเข้ากันได้กับ net-tools

ในเวลาเดียวกันเราเชื่อว่าแพคเกจส่วนใหญ่ที่ใช้เครื่องมือเน็ตควรได้รับการติดตั้งเพื่อใช้ iproute แทนในขณะที่คนอื่น ๆ สามารถใช้โปรแกรมเสริมได้ในบางครั้ง แพคเกจ ifupdown นั้นเห็นได้ชัดว่าเป็นตัวเลือกแรก แต่ดูเหมือนว่ารุ่นที่ใช้ iproute นั้นมีให้ทดลองใช้มาตั้งแต่ปี 2550

แนวคิดในการเขียน wrappers ในที่สุดก็เลิกทำไม่ได้และเกือบทั้งหมดกระจาย Linux ได้เปลี่ยนเป็น iproute2 ตั้งแต่นั้นมา


21

หน้าคนของifconfigพูดว่า:

IFCONFIG(8)           Linux System Administrator's Manual          IFCONFIG(8)

NAME
       ifconfig - configure a network interface

SYNOPSIS
       ifconfig [-v] [-a] [-s] [interface]
       ifconfig [-v] interface [aftype] options | address ...

NOTE
       This  program  is obsolete!  For replacement check ip addr and ip link.
       For statistics use ip -s link.

Arch Linuxข่าวหน้าพูดว่า:

การเลิกใช้เครื่องมือเน็ต

2011-06-08 - Tom Gundersen

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

net-tools จะยังคงอยู่ในแหล่งเก็บข้อมูลต่อไปดังนั้นสคริปต์ที่เชื่อถือได้ควรใช้งานได้

และLinux Foundation ก็พูดเหมือนกันมาก:

net-tools
โดย Linux Foundatio ... - 19 พฤศจิกายน 2552 - 10:23 น

networking

ภาพรวม

คอลเล็กชันของโปรแกรมที่สร้างชุดพื้นฐานของการกระจายเครือข่าย NET-3 สำหรับระบบปฏิบัติการ Linux แพ็คเกจนี้ประกอบด้วย arp (8), ชื่อโฮสต์ (1), ifconfig (8), ipmaddr, iptunnel, mii-tool (8), nameif (8), netstat (8), plipconfig (8), rarp (8), เส้นทาง (8) และ slattach (8)

Maintainers: Bernd Eckenfels, Phil Blundell
Current Version: net-tools 1.60 (see upstream git for updates)

โปรดทราบว่าโปรแกรมเครื่องมือสุทธิส่วนใหญ่ล้าสมัยแล้ว:

program   obsoleted by
arp       ip neigh
ifconfig  ip addr
ipmaddr   ip maddr
iptunnel  ip tunnel
route     ip route
nameif    ifrename
mii-tool  ethtool

คุณอาจต้องการตรวจสอบหน้า iproute2

ฉันไม่แน่ใจว่าทำไม Ubuntu จึงไม่พกโน้ตย่อไป


คุณไม่พูดในสิ่งที่ distro อูบุนตูยังคงมีหน้าคนจริงสำหรับ iconfig
Andrew Schulman

@AndrewSchulman อัปเดตคำตอบของฉันพร้อมลิงก์ไปยังหน้า man
คำถามล้นเมื่อ

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

@AndrewSchulman ฉันได้ย้อนกลับคำสั่งของคุณใน Ubuntu เพราะนั่นไม่ใช่สิ่งที่ฉันตั้งใจจะพูด
คำถามล้นเมื่อ

10

นี่เป็นปัญหาเฉพาะของ distro net-tools ได้ถูกคัดค้านโดย distro สำคัญ ๆ (หรือ distro upstream) เกือบทุกแห่งดังนั้นดังนั้นชุมชนทั้งหมดจึงเปลี่ยนจาก ifconfig เป็น ip - แต่การเปลี่ยนแปลงนั้นช้าเนื่องจาก distros บางตัวมีอายุการเก็บรักษาที่ยาวนานมาก (ตัวอย่างเช่น RHEL)

คุณมีโอกาสน้อยที่จะพบการประกาศเลิกใช้มากกว่ารายการในบันทึกย่อประจำรุ่นของรุ่นใหญ่สำหรับ distro ที่ระบุบางอย่างเช่น "As of FooLinux v2.0 net-tools ถูกคัดค้านคำสั่ง 'ip' (ถ้า distro มีการเปิดตัวที่สำคัญนั่นคือ Gentoo และ Arch เป็นข้อยกเว้นที่น่าสนใจซึ่งจัดการเรื่องนี้ผ่านการประกาศข่าวที่ปรากฏเป็นประกาศของผู้ดูแลระบบภายในและบางครั้งบนเว็บไซต์ของพวกเขา: https://www.archlinux.org/ ข่าว / การลดค่าของสุทธิเครื่องมือ / .)

คุณสามารถพบพูดคุยมากมายเกี่ยวกับอนิจกรรมเครื่องมือเน็ต (ช้า) ในเครื่องมือติดตามบั๊กและโรดแมป dev เช่นกัน:

เป็นไปได้ทั้งหมดที่ distro แห่งใดแห่งหนึ่งอาจตัดสินใจที่จะยึดติดกับเครื่องมือ net และนำการบำรุงรักษามาใช้เป็นโครงการสัตว์เลี้ยงของพวกเขา แต่สิ่งนี้ไม่น่าเป็นไปได้เนื่องจากผลลัพธ์ที่ได้ แน่นอนเว้นแต่ Apple จะเป็นเจ้าของ distro ;-)

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


1
@BrianKnoblauch อย่าไปคิดเรื่องนี้หนักเกินไป มีการผสมผสานที่ซับซ้อนของการเมืองธุรกิจและเหตุผลทางเทคนิค (จริง) บางสิ่งมีการเปลี่ยนแปลงอย่างรวดเร็วและอื่น ๆ ช้ามาก เพียงแค่ต้องยอมรับว่าสิ่งต่าง ๆ จะระเบิดเราและให้ความสนใจที่จะปล่อยบันทึกทุก ๆ ครั้ง :-)
zxq9

1
@R Maintenance มีอย่างน้อยบรรจุภัณฑ์กับสิ่งที่เป็นแกนสาธารณูปโภครวมถึง distro ของคุณ (ซึ่งในที่สุดก็หมายถึงการพอร์ตหรือแพทช์อื่น ๆ แพคเกจต้นน้ำที่ไม่เกี่ยวข้องคุณยังรวมถึงการทำงานภายใต้ข้อ จำกัด ของระบบที่มีสิ่งล้าสมัย) (พิจารณาภาวะที่กลืนไม่เข้าคายไม่ออกของ Apple เพิ่มขึ้น) แพ็คเกจเก่ากลายเป็น tarbabies เมื่อเวลาผ่านไปโดยเฉพาะอย่างยิ่งสิ่งที่คุณคาดหวังน้อยที่สุด ความแตกต่างระหว่างสิ่งที่เห็นและสิ่งที่ไม่เห็นของ Bastiat คืออุปกรณ์ต่อพ่วงที่นี่เช่นเดียวกับที่ Heinlein ยืนยันว่า "ไม่มีสิ่งใดเป็นอาหารกลางวันฟรี"
zxq9

2
นี้ไม่ถูกต้อง: distro ใด ๆ ที่ใช้เคอร์เนลการบำรุงรักษาในปัจจุบันจะมีการเชื่อมต่อเครือข่ายการตั้งค่าที่จะไม่ได้ทำงานกับ ifconfig
mikemaccana

1
@ zxq9 ฉันเข้าใจว่าคุณพูดถึงว่ามันเป็นปัญหาเฉพาะของ distro ฉันพบว่าไม่ใช่ปัญหาเฉพาะของ distro Linux distros ทั้งหมดใช้เคอร์เนลเดียวกันไม่ใช่ distro เดียวจะใช้เคอร์เนลที่สามารถแสดงแนวคิดการเชื่อมต่อเครือข่ายทั้งหมดในลักษณะที่ ifconfig จะแสดงอินเตอร์เฟสเครือข่ายที่กำหนดค่าไว้อย่างถูกต้อง
mikemaccana

1
@ zxq9 distros Linux ทั้งหมดใช้เคอร์เนล Linux ซึ่งเป็นตำแหน่งที่เครือข่ายioctlนั้นนำไปใช้งาน คุณเข้าใจผิดและคิดว่าฉันหมายถึงเคอร์เนลเวอร์ชัน ลินุกซ์ distros ทั้งหมดที่เก็บรักษาไว้ (เช่นใช้เคอร์เนลที่อายุน้อยกว่า 10 ปี) มีปัญหาที่ ifconfig ไม่สามารถแสดงได้เช่น IP เสมือนบน VLAN บน NIC ที่ถูกผูกมัด (ซึ่งเป็นที่นิยมมากกว่าที่คุณคิด) เนื่องจากมันส่งผลกระทบต่อการกระจาย Linux ที่ได้รับการบำรุงรักษาทั้งหมดอีกครั้งจึงไม่ใช่ปัญหาเฉพาะของ distro
mikemaccana

2

ifconfigไม่ใช่ส่วนหนึ่งของ Linux มันเป็นเครื่องมือที่มีอยู่ในลีนุกซ์ส่วนใหญ่ คุณจะต้องอ้างถึงเอกสารคู่มือการแจกจ่ายเฉพาะเพื่อค้นหาสาเหตุที่เอกสารถูกคัดค้าน


4
มันไม่ได้เป็นส่วนหนึ่งของลินุกซ์ในขณะนี้ มันเริ่มต้นชีวิตใน Linux เมื่อ Linux ใช้ BSD IP Stack (ifconfig เป็นส่วนหนึ่งของ BSD IP Stack) Linux เขียน IP สแต็คของตนเองประมาณปี 2544 และเขียน ifconfig ของตนเองเป็นส่วนหนึ่งของ net-tools เพื่อความเข้ากันได้
Chris S
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.