ชีวประวัติ ข้อมูลจำเพาะ การวิเคราะห์

Centos ปิดการใช้งาน ipv6 จะทำอย่างไรถ้า CentOS ไม่มีเครือข่าย จะทำอย่างไรถ้า CentOS ไม่เห็นการ์ดเครือข่าย

เริ่มต้นด้วย EL6 ผู้จำหน่ายซอฟต์แวร์ตัดสินใจที่จะลบ boot.iso ออกจากไดเร็กทอรี /images และส่งเป็นสื่อแยกต่างหาก เนื่องจากภาพนี้มีขนาดใหญ่ เราจึงตัดสินใจที่จะทำเช่นเดียวกัน บน ช่วงเวลานี้ดิสก์อิมเมจการติดตั้งเครือข่ายเรียกว่า netinstall.iso และอยู่ในไดเร็กทอรี isos/ พร้อมกับอิมเมจการติดตั้งที่เหลือ

2. เหตุใดฉันจึงต้องเข้าสู่ระบบและใช้ด้วยตัวเองเพื่อให้การ์ดเครือข่ายอีเทอร์เน็ตของฉันทำงานได้

และทำไมเมื่อเปรียบเทียบกับการปฏิบัติทั่วไปชื่อของอินเทอร์เฟซเครือข่ายจึงมีชื่อว่า "ไม่ถูกต้อง" ท้ายที่สุดสิ่งนี้ละเมิดกฎของ Unix "อย่าเปลี่ยนความคาดหวัง"

ผู้จำหน่ายซอฟต์แวร์ได้เพิ่ม NetworkManager ในการกำหนดค่าเริ่มต้น และอินเทอร์เฟซเครือข่าย (ในลักษณะที่อธิบายไม่ได้) ไม่ทำงานตามค่าเริ่มต้น สิ่งนี้สามารถแก้ไขได้ในระหว่างขั้นตอนการติดตั้งในขั้นตอนเมื่อตัวติดตั้งแจ้งให้คุณกำหนดค่าภาษา/แป้นพิมพ์/ที่เก็บข้อมูล/ซอฟต์แวร์ในหน้าต่างตัวติดตั้งหลัก ทำให้การ์ดเครือข่ายของคุณใช้งานได้ ในการทำเช่นนี้ คุณต้องคลิก "เครือข่ายและชื่อโฮสต์" เลือกการเชื่อมต่อเครือข่ายอีเทอร์เน็ตที่คุณต้องการเปลี่ยน แล้วคลิกปุ่ม "ปิด" ที่มุมขวาบน สมมติว่าคุณสามารถใช้ DHCP ได้ การเชื่อมต่อเครือข่ายของคุณจะเข้าสู่สถานะรับที่อยู่เครือข่าย หากคุณต้องการกำหนดการตั้งค่าเครือข่ายด้วยตนเอง ให้คลิก "กำหนดค่า" จากนั้นป้อนและบันทึก ค่าที่ต้องการ. เพื่อให้การเปลี่ยนแปลงมีผล เป็นไปได้มากว่าจำเป็นต้องปิดใช้งานแล้วเปิดใช้งานอินเทอร์เฟซเครือข่ายที่กำหนดค่าใหม่ คลิกเสร็จสิ้น นอกเหนือจากวิธีการข้างต้น การเชื่อมต่อเครือข่ายหลังการติดตั้งสามารถกำหนดค่าได้โดยใช้ " NetworkManager" (อยู่ใน "ระบบ; การกำหนดค่าตามความชอบ; การเชื่อมต่อเครือข่าย" หรือคลิกขวาที่ไอคอนเครือข่ายขนาดเล็กในพื้นที่แจ้งเตือน จากนั้น - "แก้ไขการเชื่อมต่อ ").

หากคุณไม่ได้ใช้ NetworkManager ผลลัพธ์เดียวกันสามารถทำได้โดยการเปลี่ยนไฟล์การกำหนดค่าของอินเทอร์เฟซเครือข่ายที่เกี่ยวข้อง (โดยปกติจะเป็น /etc/sysconfig/network-scripts/ifcfg-eth0): "ONBOOT=no" เป็น "ONBOOT=yes ". หากคุณใช้ DHCP คุณอาจต้องเพิ่มบรรทัด "BOOTPROTO=dhcp" IP แบบคงที่จะต้องมี "BOOTPROTO=static"

สมมติว่าชื่ออุปกรณ์เครือข่ายเป็น eth0 การเปลี่ยนบรรทัด ONBOOT สามารถทำได้ (เป็น root) ดังนี้

# cd /etc/sysconfig/network-scripts/ # sed -i -e " [ป้องกันอีเมล]^ONBOOT=" [ป้องกันอีเมล]="[ป้องกันอีเมล]"ifcfg-eth0

เกี่ยวกับ "ความคาดหวังที่เปลี่ยนแปลง": ตัวอย่างก่อนหน้านี้ใช้การตั้งชื่อ "แบบดั้งเดิม" ของอินเทอร์เฟซเครือข่าย: eth0. อย่างไรก็ตาม ยังสามารถตั้งชื่ออื่นได้อีก เช่น em1, p3p1เป็นต้น ชอบหรือไม่ แนวคิดการตั้งชื่อนี้เป็นการพัฒนาเพิ่มเติมของ Linux สิ่งนี้ได้อธิบายไว้ก่อนหน้านี้ใน "การแจกจ่ายการทดสอบ" ของผู้จำหน่ายซอฟต์แวร์ ดูเพิ่มเติมที่การเขียนและบล็อกโพสต์ของ Dell

3. หากต้องการคืนชื่อเดิมต้องทำอย่างไร

มี 3 ขั้นตอนที่จำเป็นสำหรับสิ่งนี้:

  • เพิ่มพารามิเตอร์เคอร์เนล "inet.ifnames=0" และ "biosdevname=0" ของ grub bootloader
  • เปลี่ยนไฟล์กำหนดค่าสำหรับอินเทอร์เฟซเครือข่ายของคุณที่อยู่ใน /etc/sysconfig/network-scripts/ โดยเปลี่ยนชื่อเป็น "ifcfg-ethX"
  • ในกรณีที่คุณมีอินเทอร์เฟซเครือข่ายหลายตัวและต้องการควบคุมการตั้งชื่อของแต่ละอินเทอร์เฟซแทนที่จะปล่อยให้เคอร์เนลทำ ให้แทนที่ /usr/lib/udev/rules.d/60-net.rules ด้วย /etc/ udev/rules.d /60-net.rules

4. แต่ฉันแค่ต้องการให้ทุกอย่างทำงานและสามารถเปลี่ยนไฟล์การกำหนดค่าด้วยตนเองได้

การติดตั้งส่วนใหญ่ไม่ต้องการความซับซ้อนมากเกินไปในการโต้ตอบกับ NetworkManager เพียงแค่ คู่มือการเปลี่ยนแปลงไฟล์คอนฟิกูเรชัน ด้านล่างนี้เป็นตัวอย่างของการกำหนดค่าอินเทอร์เฟซเครือข่ายโดยใช้ DHCP โดยไม่มี NetworkManager :

# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" BOOTPROTO=dhcp NM_CONTROLLED="no" PERSISTENT_DHCLIENT=1 ONBOOT="yes" TYPE=Ethernet DEFROUTE=yes PEERDNS=yes PEERROUTES=ใช่ IPV4_FAILURE_FATAL=ใช่ IPV6INIT=ใช่ IPV6_AUTOCONF=ใช่ IPV6_DEFROUTE=ใช่ IPV6_PEERDNS=ใช่ IPV6_PEERROUTES=ใช่ IPV6_FAILURE_FATAL=ไม่ใช่ NAME="eth0" #

หรือการตั้งค่าตามปกติโดยใช้ "สถิติ":

$ cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" HWADDR="00:21:70:10:7E:CD" NM_CONTROLLED="no" ONBOOT="yes" BOOTPROTO=static # BOOTPROTO= dhcp IPADDR=10.16.1.106 NETMASK=255.255.255.0 # # GATEWAY บางครั้งอยู่ใน: /etc/sysconfig/network GATEWAY=10.16.1.1

หลังจากนั้นคุณสามารถเพิ่มคุณสมบัติทั่วไปอื่นๆ เช่น ชื่อโฮสต์หรือเซิร์ฟเวอร์ DNS:

$ cat /etc/sysconfig/network HOSTNAME=acme.example.com DNS1=10.16.1.112 DNS2=8.8.8.8 ## DNS2=76.242.0.28 SEARCH=example.com

พารามิเตอร์เหล่านี้เป็นทางเลือกเพราะ เซิร์ฟเวอร์ DHCP เองสามารถจัดการได้ อักษรย่อ-s สามารถกำหนดการตั้งค่า เช่น ชื่อคอมพิวเตอร์ โดยใช้บันทึก PTR ในสภาพแวดล้อม DNS ที่กำหนดค่าไว้อย่างเหมาะสม แต่ผู้ใช้บางรายอาจต้องเปลี่ยนการตั้งค่าด้วยตนเอง เอกสารฉบับเต็มเกี่ยวกับ initscripts สามารถพบได้ที่:

Rpm -qd initsscripts

แม้ในสภาพแวดล้อมที่ไม่มี ผู้ชาย- แพ็คเกจและการพึ่งพา

5. จะปิดการใช้งาน IPv6 ได้อย่างไร?

พนักงานของผู้จำหน่ายซอฟต์แวร์คนหนึ่งแนะนำให้ปล่อยโมดูล IPv6 ไว้ เนื่องจาก การปิดใช้งานอาจส่งผลต่อการทำงานของ SELinux และส่วนประกอบอื่นๆ แนะนำให้เพิ่มบรรทัดต่อไปนี้ใน /etc/sysctl.conf:

net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

และปิดใช้งาน IPv6 บนระบบที่กำลังทำงานอยู่:

เสียงสะท้อน 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6 เสียงก้อง 1 > /proc/sys/net/ipv6/conf/default/disable_ipv6

sysctl -w net.ipv6.conf.all.disable_ipv6=1 sysctl -w net.ipv6.conf.default.disable_ipv6=1

หมายเหตุ 1: เมื่อปิดใช้งาน IPv6 อาจมีปัญหาในการส่งต่อ X ผ่าน ssh ในการแก้ปัญหานี้ คุณต้องเปลี่ยน /etc/ssh/sshd_configดังนี้ เปลี่ยนแปลงอย่างใดอย่างหนึ่ง

#AddressFamily ใด ๆ

ที่อยู่Family inet

("inet" ตรงกับ "ipv4 เท่านั้น", "inet6" ตรงกับ ipv6)

หรือเอาเครื่องหมาย "#" หน้าบรรทัดออก

#ฟังที่อยู่ 0.0.0.0

และรีสตาร์ท ssh

หมายเหตุ 2: หาก Postfix เริ่มทำงานโดยปิดใช้งาน IPv6 ให้เปลี่ยน /etc/postfix/main.cf - แสดงความคิดเห็นในส่วน "localhost" และแทนที่ด้วย ipv4 loopback:

#inet_interfaces=localhost inet_interfaces=127.0.0.1

หรือลบบรรทัดที่มี ipv6 localhost ออกจากไฟล์ /etc/hosts

หมายเหตุ 3: หากต้องการปิดใช้งาน RPCBIND ipv6 (rpc, rpc.mountd, rpc,statd) ให้ระบุบรรทัด "udp6" และ "tcp6" ในไฟล์ /etc/netconfig:

Udp tpi_clts v inet udp - - tcp tpi_cots_ord v inet tcp - - #udp6 tpi_clts v inet6 udp - - #tcp6 tpi_cots_ord v inet6 tcp - - rawip tpi_raw - inet - - - ท้องถิ่น tpi_cots_ord - วนกลับ - - - ยูนิกซ์ tpi_cots_ord - วนกลับ -

6. ฉันจะดาวน์โหลดเวอร์ชัน 32 บิตได้ที่ไหน

CentOS 7 รุ่น 32 บิตอยู่ที่นี่: http://mirror.centos.org/altarch/7/isos/i386/

7. ifconfig/netstat หายไปไหน?

เพราะ สาธารณูปโภค ifconfigและ เน็ตสแตทเนื่องจาก man page สำหรับ CentOS-5 และ CentOS-6 ถูกทำเครื่องหมายว่าเลิกใช้งานมานานกว่าทศวรรษ RedHat จึงตัดสินใจไม่ตั้งค่าเริ่มต้นของแพ็คเกจ net-tool เป็น CentOS-7 ตัวอย่างเช่น เหตุผลหนึ่งที่ทำให้ ifconfig ไม่แสดงข้อมูลทั้งหมดบนที่อยู่ IP ของอินเทอร์เฟซ ให้ใช้คำสั่ง "ip" แทน ยูทิลิตี้ที่กลับมาคือ "ss" และ "ip" อย่างไรก็ตาม หากคุณต้องการยูทิลิตี้ ifconfig และ netstat จริง ๆ คุณสามารถติดตั้งแพ็คเกจ net-tools: yum install net-tools

IPv6 หรือ Internet Protocol เวอร์ชัน 6 เป็นเวอร์ชันล่าสุดของ Internet Protocol (IP) IPv4 หรือ Internet Protocol รุ่น 4 มีการใช้งานอย่างแพร่หลายแล้ว แต่ก็มีข้อจำกัดบางประการ ประการแรกคือ IPv4 มีรูปแบบที่อยู่ 32 บิต นั่นหมายความว่า IPv4 สามารถมีที่อยู่เฉพาะเพียง 4.3 พันล้านที่อยู่เท่านั้น ที่ค่อนข้างจำกัดในโลกปัจจุบัน ทุกวันนี้ เรามีอุปกรณ์ IoT (Internet of Things) สมาร์ทโฟน คอมพิวเตอร์ แล็ปท็อป เซิร์ฟเวอร์จำนวนมากที่เชื่อมต่อกับอินเทอร์เน็ต อุปกรณ์เหล่านี้แต่ละเครื่องต้องการที่อยู่ IP เพื่อสื่อสารกับโลกภายนอก ดังนั้นที่อยู่ IPv4 จึงขาดแคลน

ที่อยู่ IPv6 ใน อื่น ๆ hand เป็นที่อยู่ 128 บิต หมายถึงที่อยู่ IPV6 ที่ไม่ซ้ำกันประมาณ 340,282,366,920,938,463,463,374,607,431,768,211,456 ที่เป็นไปได้ใน IPv6 นั่นคือที่อยู่ IP จำนวนมาก ว่ากันว่าหากใช้ IPv6 ทุกอุปกรณ์ใน โลกสามารถมีที่อยู่ IPv6 เฉพาะของตนเองได้ และ IPv6 จะยังคงใช้งานได้สำหรับอุปกรณ์ใหม่ ดังนั้น IPv6 จึงแก้ปัญหาเกี่ยวกับที่อยู่ IP ที่จำกัดเช่นเดียวกับใน IPv4

แต่ในขณะที่เขียนบทความนี้ ยังไม่มีการสนับสนุน IPv6 ในหลายประเทศ ไม่รองรับแม้แต่ในประเทศของฉัน แม้ว่าโลกจะเคลื่อนไปสู่ ​​IPv6 อย่างช้าๆ แต่ก็ยังไม่ใช่ทุกอย่างที่เป็น IPv6

หากประเทศของคุณยังไม่รองรับ IPv6 ก็ไม่จำเป็นต้องเปิดใช้งานบนระบบปฏิบัติการของคุณ หลายคนมักจะปิดการใช้งาน IPv6 ในระบบปฏิบัติการของตน

ในบทความนี้ ฉันจะแสดงวิธีปิดการใช้งาน IPv6 บน CentOS 7.5 มาเริ่มกันเลย.

ตรวจสอบว่าเปิดใช้งาน IPv6 หรือไม่

คุณสามารถตรวจสอบว่าเปิดใช้งาน IPv6 บนระบบปฏิบัติการ CentOS 7.5 ของคุณหรือไม่โดยใช้คำสั่งต่อไปนี้:

$ ip a | grep inet6

อย่างที่คุณเห็น ฉันเปิดใช้งาน IPv6 แล้ว

หากปิดใช้งาน IPv6 คุณไม่ควรเห็นเอาต์พุตหากคุณเรียกใช้คำสั่งนี้

ปิดใช้งาน IPv6 โดยใช้พารามิเตอร์เคอร์เนล

ในส่วนนี้ ฉันจะแสดงวิธีปิดการใช้งาน IPv6 อย่างถาวร

คุณสามารถปิดใช้งาน IPv6 เมื่อคอมพิวเตอร์บูทโดยเปลี่ยนพารามิเตอร์เคอร์เนล

ก่อนอื่นให้แก้ไขการกำหนดค่า GRUB

$ sudo vim /etc/default/grub

คุณควรเห็นหน้าต่างต่อไปนี้

กดครั้งแรก ผมเพื่อไปที่ แทรกโหมด.

ตอนนี้เพิ่ม ipv6.disable=1ก่อน crashkernel = อัตโนมัติใน GRUB_CMDLINE_LINUXตามที่ระบุไว้ในภาพหน้าจอด้านล่าง

ตอนนี้กด แล้วพิมพ์คำว่า :wq!แล้วกด เพื่อบันทึกไฟล์

อัปเดตไฟล์คอนฟิกูเรชันของ GRUB ด้วยคำสั่งต่อไปนี้:

$ sudo grub2-mkconfig -o / boot/ grub2/ grub.cfg

ควรอัปเดตการกำหนดค่า GRUB

ตอนนี้รีสตาร์ทคอมพิวเตอร์ด้วยคำสั่งต่อไปนี้:

$ sudo รีบูต

หากคุณเรียกใช้คำสั่งต่อไปนี้อีกครั้ง คุณไม่ควรเห็นผลลัพธ์ใดๆ

$ ip a | grep inet6

ปิดใช้งาน IPv6 โดยใช้ไฟล์กำหนดค่า /etc/sysctl.conf

คุณยังสามารถปิดใช้งาน IPv6 อย่างถาวรโดยใช้ /etc/sysctl.confไฟล์การกำหนดค่า

ก่อนอื่นให้เปิด /etc/sysctl.confไฟล์ด้วยคำสั่งต่อไปนี้:

ตอนนี้เพิ่มบรรทัดต่อไปนี้:

net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6 = 1

ตอนนี้ให้บันทึกไฟล์และรีบูตเครื่องคอมพิวเตอร์ด้วยคำสั่งต่อไปนี้:

$ sudo รีบูต

ควรปิดใช้งาน IPv6

ปิดใช้งาน IPv6 ของอินเทอร์เฟซเครือข่ายเฉพาะ

คุณยังสามารถปิดใช้งาน IPv6 ของอินเทอร์เฟซเครือข่ายเฉพาะได้อีกด้วย

ก่อนอื่นคุณต้องค้นหาอินเทอร์เฟซเครือข่ายที่คุณต้องการปิดใช้งานด้วยคำสั่งต่อไปนี้:

แสดงลิงค์ $ ip

คุณควรเห็นชื่ออินเทอร์เฟซเครือข่ายตามที่ทำเครื่องหมายไว้ในภาพหน้าจอด้านล่าง

สมมติว่าคุณต้องการปิดใช้งาน IPv6 สำหรับ ens36อินเตอร์เฟซ.

เปิดครั้งแรก /etc/sysctl.confไฟล์ด้วยคำสั่งต่อไปนี้:

$ sudo เสียงเรียกเข้า /etc/sysctl.conf

ตอนนี้เพิ่มบรรทัดต่อไปนี้ที่ส่วนท้ายของไฟล์:

net.ipv6.conf.ens36.disable_ipv6=1

ปิดใช้งาน IPv6 ชั่วคราวโดยใช้คำสั่ง sysctl

คุณยังสามารถปิดการใช้งาน IPv6 ชั่วคราวได้อีกด้วย ด้วยวิธีนี้ IPv6 จะเปิดใช้งานเมื่อคุณรีบูตระบบ วิธีนี้เหมาะสำหรับการทดสอบว่าทุกอย่างในระบบปฏิบัติการ CentOS 7.5 ของคุณทำงานได้หรือไม่ก่อนที่จะปิดใช้งาน IPv6 อย่างถาวร

เรียกใช้คำสั่งต่อไปนี้เพื่อปิดใช้งาน IPv6 ชั่วคราว:

$ sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
$ sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1

ควรปิดใช้งาน IPv6

นั่นเป็นวิธีที่คุณปิดใช้งาน IPv6 บน CentOS 7.5 อย่างถาวรและชั่วคราว ขอบคุณที่อ่านบทความนี้

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

การตั้งค่าเครือข่ายบนเซิร์ฟเวอร์ CentOS 7

ครั้งแรกที่เราพบการตั้งค่าเครือข่ายของเซิร์ฟเวอร์ CentOS คือเมื่อเราติดตั้ง ในหน้าจอการตั้งค่าเริ่มต้น มีรายการแยกต่างหากเกี่ยวกับการกำหนดค่าอินเทอร์เฟซเครือข่าย:

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


เมื่อเปิดหน้าต่างการตั้งค่า Ehernet เพิ่มเติม คุณสามารถเปลี่ยนชื่ออินเทอร์เฟซเครือข่าย ระบุการตั้งค่า IP (รายการที่ 1 ในภาพ) เลือก การตั้งค่าด้วยตนเอง(ข้อ 2 ในภาพ) มอบหมาย ที่อยู่ IP(ข้อ 3 ในรูป) ติดตั้ง เซิร์ฟเวอร์ DNS(รายการที่ 4 ในภาพ) และบันทึกการตั้งค่าเครือข่าย (รายการที่ 5 ในภาพ):


หลังจากเสร็จสิ้นการตั้งค่าที่เหลือ การติดตั้งจะเริ่มขึ้น หลังจากการติดตั้ง คุณจะมีเซิร์ฟเวอร์ที่มีการตั้งค่าเครือข่ายที่คุณระบุ

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

Bash: ifconfig: ไม่พบคำสั่ง

หรือในเวอร์ชั่นรัสเซีย:

Bash: ไม่พบคำสั่ง ifconfig

หากต้องการทำงานกับ ifconfig และยูทิลิตีเครือข่ายอื่นๆ คุณต้องติดตั้งแพ็คเกจ เครื่องมือสุทธิ. มาทำกันเถอะ:

# yum -y ติดตั้ง net-tools.x86_64

ตอนนี้ คุณสามารถดูการตั้งค่าเครือข่าย:

mtu 1500 เน็ต 192.168.159.129 อีเธอร์ 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) แพ็กเก็ต RX 319 ไบต์ 36709 (35.8 KiB) ข้อผิดพลาด RX 0 หลุด 0 โอเวอร์รัน 0 เฟรม 0 แพ็กเก็ต TX 256 ไบต์ 148817 (145.3 KiB) ข้อผิดพลาด TX 0 หลุด 0 โอเวอร์รัน 0 ผู้ให้บริการ 0 การชนกัน 0 โล: ธง=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6::1 คำนำหน้าlen 128 scopeid 0x10 วนซ้ำ txqueuelen 0 (ลูปแบ็คในเครื่อง) แพ็กเก็ต RX 6 ไบต์ 624 (624.0 B) ข้อผิดพลาด RX 0 หลุด 0 โอเวอร์รัน 0 เฟรม 0 แพ็กเก็ต TX 6 ไบต์ 624 (624.0 B) ข้อผิดพลาด TX 0 หลุด 0 โอเวอร์รัน 0 พาหะ 0 ชนกัน 0

หากคุณไม่ต้องการติดตั้งแพ็คเกจเพิ่มเติม คุณสามารถใช้คำสั่งที่ง่ายกว่านี้ได้ ไอพีด้วยพารามิเตอร์:

# ไอพีแอด 1:lo: mtu 65536 สถานะ qdisc noqueue UNKNOWN ลิงก์ / วนกลับ 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 ขอบเขตโฮสต์ lo valid_lft ที่ต้องการตลอดไป_lft ตลอดไป inet6::1/ 128 ขอบเขตโฮสต์ valid_lft ตลอดไป reserved_lft ตลอดไป 2: eno16777728: mtu 1500 qdisc pfifo_fast สถานะ UP qlen 1000 ลิงก์/อีเธอร์ 00:0c:29:7d:59:3f brd ff:ff:ff:ff:ff:ff inet 192.168.159.129 /24 brd 192.168.159.255 ขอบเขตโกลบอลไดนามิก eno16777728 valid_lft 1709sec reserved_lft 1709sec inet6 fe80::20c:29ff:fe7d:593f/64 ขอบเขตลิงค์ valid_lft ตลอดกาล reserved_lft ตลอดไป

เราได้เห็นการกำหนดค่าเครือข่ายแล้ว ตอนนี้มาแก้ไขกัน สมมติว่าเราต้องเปลี่ยนที่อยู่ IP เมื่อต้องการทำเช่นนี้ ให้ไปที่ไดเร็กทอรี /etc/sysconfig/network-scripts และเปิดไฟล์เพื่อแก้ไข ifcfg-eth0. ไฟล์นี้มีเนื้อหาดังต่อไปนี้:

ตามการตั้งค่าจากไฟล์นี้ เราได้รับที่อยู่ IP ผ่าน dhcp ในการลงทะเบียน static ip ด้วยตนเอง เรานำไฟล์ไปยังเนื้อหาต่อไปนี้:

เราได้เปลี่ยนการตั้งค่า:

เพื่อให้การเปลี่ยนแปลงมีผล คุณต้องอ่านการตั้งค่าเครือข่ายอีกครั้ง:

การรีสตาร์ทเครือข่าย (ผ่าน systemctl): [ ตกลง ]

ตรวจสอบว่ามีการใช้การกำหนดค่าเครือข่ายใหม่หรือไม่:

# ifconfig: eno16777728: ธง = 4163 mtu 1500 เน็ต 192.168.159.129 netmask 255.255.255.0 ออกอากาศ 192.168.159.255 inet6 fe80::20c:29ff:fe7d:593f คำนำหน้า 64 scopeid 0x20 อีเธอร์ 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet) แพ็กเก็ต RX 672 ไบต์ 71841 (70.1 KiB) ข้อผิดพลาด RX 0 หลุด 0 โอเวอร์รัน 0 เฟรม 0 แพ็กเก็ต TX 572 ไบต์ 290861 (284.0 KiB) ข้อผิดพลาด TX 0 หลุด 0 โอเวอร์รัน 0 ผู้ให้บริการ 0 การชน 0

ทุกอย่างเป็นไปตามลำดับ มีการตั้งค่าอินเทอร์เฟซเครือข่ายใหม่

วิธีรับการตั้งค่าเครือข่ายผ่าน DHCP

พิจารณาสถานการณ์ย้อนกลับ สมมติว่าการ์ดเครือข่ายของคุณตั้งค่าบางอย่างด้วยตนเอง แต่คุณต้องการให้คอมพิวเตอร์ของคุณรับการตั้งค่าเครือข่ายผ่าน dhcp ในฐานะไคลเอนต์ ในการทำเช่นนี้คุณต้องดำเนินการตรงข้ามกับที่เราทำมาก่อน นั่นคือเปิดไฟล์ /etc/sysconfig/network-scripts/ifcfg-eth0 และลบบรรทัดที่มีพารามิเตอร์ DNS, IPADDR, PREFIX, GATEWAY ที่นั่น และระบุค่าในพารามิเตอร์ BOOTPROTO "ดีเอชพี". บันทึกไฟล์และรีสตาร์ทเครือข่าย:

# /etc/init.d/network รีสตาร์ท

จากนั้นเราจะตรวจสอบว่าลูกค้าของเราได้รับการตั้งค่าผ่าน dhcp หรือไม่

วิธีตั้งค่า DNS บน CentOS 7

การตั้งค่าเซิร์ฟเวอร์ DNS ปัจจุบันใน CentOS สามารถดูได้จากสองที่:

  1. ในไฟล์การตั้งค่าการ์ดเครือข่าย ifcfg-eth0 ซึ่งเราได้แก้ไขก่อนหน้านี้หลายครั้ง
  2. ในไฟล์ /etc/resolv.conf

ฉันไม่รู้ว่าทำไมพวกเขาถึงอยู่ในสองแห่ง แต่ก่อนการตั้งค่าเซิร์ฟเวอร์ dns ในบางดิสทริบิวชัน ฉันจำไม่ได้ว่าอันใด พวกเขาระบุไว้ใน resolv.conf เท่านั้น แต่เมื่อถึงจุดหนึ่งสิ่งนี้ก็เปลี่ยนไป และการตั้งค่าเครือข่ายทั้งหมดก็เริ่มถูกจัดเก็บไว้ในไฟล์เดียวพร้อมกับที่อยู่ เกตเวย์ มาสก์ และอื่นๆ หากคุณแก้ไขไฟล์ resolv.conf ทันทีและเพิ่ม DNS ของเซิร์ฟเวอร์ที่นั่น หลังจากรีบูตแล้ว ค่าจากไฟล์ ifcfg-eth0 จะถูกแทนที่ด้วยค่าจากไฟล์ ifcfg-eth0

ดังนั้นในการตั้งค่าพารามิเตอร์เซิร์ฟเวอร์ dns คุณต้องแก้ไขไฟล์การตั้งค่าเครือข่าย ifcfg-eth0 โดยเพิ่มเซิร์ฟเวอร์ได้มากเท่าที่คุณต้องการ ตัวอย่างเช่น:

DNS1="192.168.159.2" DNS2="8.8.8.8" DNS3="8.8.4.4"

หากต้องการใช้การตั้งค่า ให้บันทึกไฟล์และรีสตาร์ทเครือข่าย ทุกอย่างเป็นไปตามปกติ หลังจากรีสตาร์ทเซิร์ฟเวอร์ การตั้งค่า DNS จะถูกเขียนไปยังไฟล์ resolv.conf

# cat /etc/resolv.conf # สร้างโดย NetworkManager nameserver 192.168.159.2 nameserver 8.8.8.8 nameserver 8.8.4.4

วิธีปิดการใช้งาน ipv6 บน CentOS 7

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

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

# netstat -tulnp การเชื่อมต่ออินเทอร์เน็ตที่ใช้งานอยู่ (เฉพาะเซิร์ฟเวอร์) Proto Recv-Q Send-Q ที่อยู่ในระบบ ที่อยู่ต่างประเทศ สถานะ PID/ชื่อโปรแกรม tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2317/master tcp 0 0 0.0.0.0 :22 0.0.0.0:* ฟัง 1333/sshd tcp6 0 0::1:25:::* ฟัง 2317/master tcp6 0 0:::22:::* ฟัง 1333/sshd udp 0 0 0.0.0.0:49252 0.0.0.0:* 694/avahi-daemon: r udp 0 0 0.0.0.0:123 0.0.0.0:* 715/chronyd udp 0 0 0.0.0.0:5353 0.0.0.0:* 694/avahi-daemon: r udp 0 0 127.0.0.1:323 0.0.0.0:* 715/chronyd udp6 0 0:::123:::* 715/chronyd udp6 0 0::1:323:::* 715/chronyd

ทุกบรรทัดที่มี ::: เป็นโปรโตคอล ipv6 ในกรณีของฉัน นี่คือ sshd, postfix และ chronyd มาปิดการใช้งาน ipv6 สำหรับพวกเขาและปล่อยให้ ipv4 เท่านั้น

เริ่มจาก sshd กันก่อน เปิดไฟล์การกำหนดค่า /etc/ssh/sshd_config และค้นหาบรรทัด:

#AddressFamily ใดๆ #ListenAddress 0.0.0.0

ลองแสดงความคิดเห็นและเปลี่ยนแปลงพวกเขา มันควรจะเป็นดังนี้:

ที่อยู่Family inet ListenAddress 0.0.0.0

ตอนนี้เปิดไฟล์กำหนดค่า postfix /etc/postfix/main.cf เรากำลังมองหาบรรทัดที่นั่น:

#inet_protocols = ทั้งหมด

เปลี่ยนไป:

inet_protocols=ipv4

ปิดการใช้งาน ipv6 ใน chronyd ในการทำเช่นนี้ ให้สร้างไฟล์ /etc/sysconfig/ โครและเพิ่มบรรทัด:

ตัวเลือก=-4

ตอนนี้ปิดการใช้งาน ipv6 ใน CentOS เปิดไฟล์ /etc/ sysctl.confและเพิ่มบรรทัดที่นั่น:

net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

แก้ไขไฟล์ /etc/sysconfig/ เครือข่ายโดยเพิ่มที่นั่น:

NETWORKING_IPV6=ไม่มี IPV6INIT=ไม่มี

รีบูตและตรวจสอบผลลัพธ์:

# รีบูต # ifconfig eno16777728: ตั้งค่าสถานะ = 4163 mtu 1500 inet 192.168.159.129 netmask 255.255.255.0 ออกอากาศ 192.168.159.255 อีเธอร์ 00:0c:29:7d:59:3f แพ็กเก็ต 2138 ไบต์ 1327955 (1.2 MiB) ข้อผิดพลาด TX 0 ลดลง 0 โอเวอร์รัน 0 ผู้ให้บริการ 0 ชนกัน 0 70 จริง = ธง mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 ลูป txqueuelen 0 (ลูปแบ็คในเครื่อง) แพ็กเก็ต RX 0 ไบต์ 0 (0.0 B) ข้อผิดพลาด RX 0 ลดลง 0 โอเวอร์รัน 0 เฟรม 0 แพ็กเก็ต TX 0 ไบต์ 0 (0.0 B) ข้อผิดพลาด TX 0 ลดลง 0 โอเวอร์รัน 0 ผู้ให้บริการ 0 การชน 0

ไม่มีการกล่าวถึงที่อยู่รูปแบบ inet6 และ ipv6 ในทุกที่ ทุกอย่างเรียบร้อยดี เราได้ปิดการใช้งาน ipv6 ใน CentOS ตอนนี้ให้ตรวจสอบรายการพอร์ตที่เปิดอยู่:

# netstat -tulnp การเชื่อมต่ออินเทอร์เน็ตที่ใช้งานอยู่ (เฉพาะเซิร์ฟเวอร์) Proto Recv-Q Send-Q ที่อยู่ในระบบ ที่อยู่ต่างประเทศ สถานะ PID/ชื่อโปรแกรม tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2291/master tcp 0 0 0.0.0.0 :22 0.0.0.0:* ฟัง 1322/sshd udp 0 0 0.0.0.0:123 0.0.0.0:* 2453/chronyd udp 0 0 0.0.0.0:5353 0.0.0.0:* 697/avahi-daemon: r udp 0 0 127.0.0.1:323 0.0.0.0:* 2453/chronyd udp 0 0 0.0.0.0:57259 0.0.0.0:* 697/avahi-daemon: r

พอร์ต ipv4 ทั้งหมด เอาล่ะ ภารกิจของเราเสร็จสิ้นแล้ว

วิธีเปลี่ยนชื่อโฮสต์ใน CentOS 7

โดยค่าเริ่มต้น ในระหว่าง การติดตั้ง CentOSใส่ชื่อโฮสต์ localhost.localdomain. หากคุณยังไม่ได้เปลี่ยน คุณสามารถทำในภายหลังได้ ขั้นแรก ตรวจสอบชื่อโฮสต์ที่คุณตั้งไว้ สิ่งนี้ทำได้โดยใช้คำสั่งในคอนโซล ชื่อโฮสต์หรือใช้ ชื่อ:

# ชื่อโฮสต์ localhost.localdomain # uname -n localhost.localdomain

ในการเปลี่ยนชื่อโฮสต์ใน CentOS คุณต้องแก้ไขไฟล์ /etc/ชื่อโฮสต์. ตรวจสอบเนื้อหาของมัน:

# cat /etc/hostname localhost.localdomain

มาแก้ไขไฟล์นี้เพื่อเปลี่ยนชื่อโฮสต์:

# mcedit /etc/hostname centos.localhost

บันทึกไฟล์และตรวจสอบ:

# ชื่อโฮสต์ centos.localhost

มีคำสั่งสำเร็จรูปที่ตั้งชื่อเซิร์ฟเวอร์ที่ต้องการได้ทันที:

# hostnamectl ตั้งค่าชื่อโฮสต์ centos.localhost

เอาล่ะ เราได้เปลี่ยนชื่อโฮสต์เป็น centos.localhost

ตั้งค่า Default Gateway บน CentOS 7

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

# netstat -nr ตารางเส้นทาง Kernel IP เกตเวย์ปลายทาง Genmask แฟล็ก MSS Window irtt Iface 0.0.0.0 149.154.71.254 0.0.0.0 UG 0 0 0 eth0 10.8.0.0 10.8.0.2 2555.255.255.0 ug 0 0 tun0 10.8.0.2 0.0.0.0.0.255.255.255.255 uh 0 0 tun0 149.154.70.0 0.0.0.25.255.254.0 UG 0 0 0 ทุน0

บรรทัดที่มีปลายทาง 0.0.0.0 ระบุที่อยู่เกตเวย์ หากคุณไม่มีหรือตั้งค่าเกตเวย์ไม่ถูกต้องในช่องเกตเวย์ คุณสามารถเปลี่ยนได้ ตั้งค่าเกตเวย์เริ่มต้น:

เส้นทางเพิ่มเริ่มต้น gw 192.168.0.1

ตัวจัดการเครือข่ายบน CentOS 7

ตามค่าเริ่มต้น CentOS มีบริการที่จัดการการเชื่อมต่อเครือข่ายทั้งหมด - ผู้จัดการเครือข่าย. ตรวจสอบการตั้งค่าเครือข่ายอย่างต่อเนื่องและใช้ daemon การจัดการการกำหนดค่าเพื่อทำการเปลี่ยนแปลงที่เหมาะสมกับอุปกรณ์เครือข่ายที่ใช้งานอยู่ รองรับไฟล์กำหนดค่า ifcfg มาตรฐาน

รายการยูทิลิตี้เครือข่ายและแอพพลิเคชั่น:

ผู้ใช้ไม่ได้โต้ตอบโดยตรงกับ NetworkManager บน CentOS แต่ใช้ยูทิลิตี้กราฟิกและบรรทัดคำสั่ง หนึ่งในโปรแกรมอรรถประโยชน์เหล่านี้คือ ระบบ config เครือข่าย tui.

ระบบกำหนดค่าเครือข่าย tui บน CentOS 7

ในการจัดการการตั้งค่าเครือข่ายใน CentOS คุณสามารถใช้ยูทิลิตี้กราฟิกได้ นนทุย. การตรวจสอบการมีอยู่ในระบบทำได้ง่ายมาก เรียกใช้ในคอนโซลก็เพียงพอแล้ว:

หากคุณไม่ได้ติดตั้งไว้ การแก้ไขทำได้ง่ายมาก ติดตั้งในการกำหนดค่าเครือข่ายระบบ CentOS tui:

# yum ติดตั้ง NetworkManager-tui

ทาง ตุ๋ยคุณสามารถระบุการตั้งค่าเครือข่ายที่เราเคยทำมาก่อนผ่านบรรทัดคำสั่งและการแก้ไข ไฟล์คอนฟิกูเรชัน. มาทำกันเถอะ เราเรียกโปรแกรมนี้ว่า

เลือกรายการแรก แก้ไขการเชื่อมต่อจากนั้นเลือกอินเทอร์เฟซเครือข่ายแล้วคลิก "แก้ไข":

ที่นี่เราสามารถเปลี่ยนชื่อการ์ดเครือข่าย, ที่อยู่ Mac, ระบุประเภทของการตั้งค่าเครือข่าย - ด้วยตนเองหรือ dhcp, ระบุที่อยู่ IP, ที่อยู่เกตเวย์, เซิร์ฟเวอร์ DNS, เพิ่มเส้นทางและการตั้งค่าอื่น ๆ ด้วยตนเอง:


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

วิธีเพิ่มเส้นทางคงที่ใน CentOS 7

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

# netstat -nr ตารางเส้นทาง Kernel IP เกตเวย์ปลายทาง Genmask ตั้งค่าสถานะ MSS หน้าต่าง irtt Iface 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 eno16777728 192.168.159.0 0.0.0.0 255.255.255.0 U 0 0 70 eno167

ในกรณีนี้ เรามีหนึ่งเส้นทางสำหรับที่อยู่ 0.0.0.0/0.0.0.0 เกตเวย์คือ 192.168.159.2 ซึ่งเป็นเกตเวย์เริ่มต้นเช่นกัน นั่นคือในความเป็นจริงไม่มีเส้นทางคงที่ ลองเพิ่มหนึ่งในนั้น

สมมติว่าเรามีซับเน็ต 192.168.8.0 มาสก์ 255.255.255.0 การรับส่งข้อมูลไปยังซับเน็ตนี้กำหนดเส้นทางโดยเกตเวย์ 192.168.159.5 เพิ่มเส้นทาง:

#เส้นทางแอด -net 192.168.8.0/24 gw 192.168.159.5

ตรวจสอบว่ามีเส้นทางที่เพิ่มเข้ามาหรือไม่ ตารางเส้นทาง:

# netstat -nr เคอร์เนลการกำหนดเส้นทาง IP ตารางปลายทางเกตเวย์ Genmask Flags หน้าต่าง MSS IRTT IFACE 0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 029.5.159.5 255.255.255.0 U 0 0 0 eno16777728

เอาล่ะ เพิ่มเส้นทางแล้ว แต่หลังจากรีบูต เส้นทางคงที่นี้จะถูกลบออก เพื่อป้องกันไม่ให้สิ่งนี้เกิดขึ้นและเพื่อบันทึกเส้นทางที่เพิ่ม คุณต้องเขียนลงในไฟล์พิเศษ ในโฟลเดอร์ /etc/sysconfig/network-scripts ให้สร้างไฟล์ชื่อ เส้นทาง-eth0เนื้อหาต่อไปนี้:

# mcedit /etc/sysconfig/network-scripts/route-eth0 192.168.8.0/24 ผ่าน 192.168.159.5

รีบูตและตรวจสอบว่ามีเส้นทางหรือไม่:

# รีบูต # netstat -nr เคอร์เนลการกำหนดเส้นทาง IP ตารางปลายทางเกตเวย์เก๋ไก๋ธง MSS หน้าต่าง IRTT IFACE 0.0.0.0.0 192.168.159.2 0.0.0.0 UG 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 .0.0 255.255.255.0 U 0 0 0 eno16777728

เอาล่ะ เพิ่มเส้นทางคงที่แล้ว

วิธีกำหนดค่า 2 ที่อยู่ IP บนอินเทอร์เฟซเดียว

หากคุณจำเป็นต้องตั้งค่า 2 ไอพีที่อยู่บนอินเทอร์เฟซเดียวกันใน CentOS ซึ่งค่อนข้างง่าย ลองใช้คำสั่ง ifconfig ก่อนอื่นมาตรวจสอบรายการอินเทอร์เฟซเครือข่าย:

# ifconfig eno16777728: ค่าสถานะ = 4163 mtu 1500 inet 192.168.159.129 netmask 255.255.255.0 ออกอากาศ 192.168.159.255 อีเธอร์ 00:0c:29:7d:59:3f แพ็กเก็ต 204 ไบต์ 27658 (27.0 KiB) ข้อผิดพลาด TX 0 ลดลง 0 โอเวอร์รัน 0 ผู้ให้บริการ 0 ชนกัน 0 03 lo: ค่าสถานะ

เพิ่มที่อยู่ IP อีกหนึ่งรายการ 192.168.159.120 ไปยังอินเทอร์เฟซ eno16777728:

# ifconfig eno16777728:1 192.168.159.120 ขึ้น

ตรวจสอบสิ่งที่เกิดขึ้น:

# ifconfig eno16777728: ค่าสถานะ = 4163 mtu 1500 inet 192.168.159.129 netmask 255.255.255.0 ออกอากาศ 192.168.159.255 อีเธอร์ 00:0c:29:7d:59:3f แพ็กเก็ต 204 ไบต์ 27658 (27.0 KiB) ข้อผิดพลาด TX 0 หลุด 0 โอเวอร์รัน 0 ผู้ให้บริการ 0 แฟล็ก 0:7eno1677s 0 =4163 mtu 1500 inet 192.168.159.120 netmask 255.255.255.0 ออกอากาศ 192.168.159.255 อีเธอร์ 00:0c:29:7d:59:3f txqueuelen 1000 (อีเธอร์เน็ต) จริง: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 ลูป txqueuelen 0 (ลูปแบ็คในเครื่อง) แพ็กเก็ต RX 11 ไบต์ 940 (940.0 B) ข้อผิดพลาด RX 0 หลุด 0 โอเวอร์รัน 0 เฟรม 0 แพ็คเก็ต TX 11 ไบต์ 940 (940.0 B) ข้อผิดพลาด TX 0 หลุด 0 โอเวอร์รัน 0 ผู้ให้บริการ 0 การชน 0

เอาล่ะ เราได้เพิ่มที่อยู่ IP ที่สองในอินเทอร์เฟซเดียวกันแล้ว แต่หลังจากรีบูตแล้ว ที่อยู่เพิ่มเติมจะไม่ถูกบันทึก หากต้องการบันทึก คุณต้องสร้างไฟล์การตั้งค่าอินเทอร์เฟซในโฟลเดอร์ /etc/sysconfig/network-scripts

# mcedit /etc/sysconfig/network-scripts/ ifcfg-eno16777728:1 DEVICE=eno16777728:1 BOOTPROTO=คงที่ IPADDR=192.168.159.120 NETMASK=255.255.255.0 ONBOOT=ใช่

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

วิธีรีสตาร์ทเครือข่ายใน CentOS 7

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

# /etc/init.d/network รีสตาร์ท

บริการ NetworkManager จะอ่านการตั้งค่าเครือข่ายทั้งหมดอีกครั้งและใช้การเปลี่ยนแปลง

วิธีค้นหาที่อยู่ IP ใน CentOS 7

หากต้องการค้นหาที่อยู่ IP ปัจจุบันใน CentOS อย่างรวดเร็ว คุณต้องใช้คำสั่งต่อไปนี้:

# ifconfig | grep inet ไอเน็ต 192.168.159.129 netmask 255.255.255.0 ออกอากาศ 192.168.159.255 inet 127.0.0.1 netmask 255.0.0.0

หรือตัวเลือกที่สองสำหรับกำหนดที่อยู่ IP ในเครื่อง:

# ไอพีแอดเดอร์ | grep inet inet 127.0.0.1/8 ขอบเขต โฮสต์ lo inet 192.168.159.129 /24 brd 192.168.159.255 ขอบเขต global eno16777728

คำสั่งทั้งสองช่วยให้คุณค้นหาที่อยู่ IP ของคุณได้อย่างรวดเร็ว

จะทำอย่างไรถ้า CentOS ไม่เห็นการ์ดเครือข่าย

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

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

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

นอกจากนี้ มีโอกาสที่คุณจะไม่เห็นการ์ดของคุณเมื่อคุณเรียกใช้คำสั่ง ifconfig เว้นแต่จะเสียบสายเครือข่ายเข้ากับการ์ดนั้น หากต้องการดูอินเทอร์เฟซทั้งหมดอย่างแน่นอน คุณต้องใช้สวิตช์ -a:

# ifconfig -a

มีอีกวิธีในการค้นหาการ์ดเครือข่ายในระบบ ติดตั้งแพ็คเกจ pciutils:

# yum -y ติดตั้ง pciutils

และดูผลลัพธ์ของคำสั่ง:

# lspci | grep อีเธอร์เน็ต

หากระบบเห็นการ์ดเครือข่ายควรมีดังต่อไปนี้:

02:00.0 ตัวควบคุมอีเธอร์เน็ต: Intel Corporation 82545EM Gigabit Ethernet Controller (ทองแดง) (rev 01)

หากเอาต์พุตว่างเปล่าแสดงว่าไม่ได้กำหนดการ์ดเครือข่าย

จะทำอย่างไรถ้า CentOS ไม่มีเครือข่าย

สมมติว่าคุณพยายาม ping ที่อยู่บางอย่าง เช่น 8.8.8.8 และได้รับการตอบกลับว่าเครือข่ายไม่พร้อมใช้งาน:

# ปิง 8.8.8.8

และในการตอบสนองคุณจะได้รับ:

เชื่อมต่อ: ไม่สามารถเข้าถึงเครือข่ายได้

สถานการณ์นี้อาจเกิดขึ้นได้หากคุณไม่ได้ติดตั้งเกตเวย์เริ่มต้น คุณสามารถเพิ่มได้ด้วยคำสั่ง:

# เส้นทาง เพิ่มค่าเริ่มต้น gw 192.168.0.1

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

ใช้ traceroute ขุดยูทิลิตี้เครือข่ายบน CentOS

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

# traceroute ya.ru bash: traceroute: ไม่พบคำสั่ง

จำเป็นต้องติดตั้งแยกต่างหากจากที่เก็บ:

# yum -y ติดตั้ง traceroute

เช่นเดียวกับโปรแกรมยอดนิยม ขุดเพื่อทำงานกับเซิร์ฟเวอร์ DNS และบันทึก:

# ขุด ya.ru ทุบตี: ขุด: ไม่พบคำสั่ง

สำหรับสิ่งนี้ ยูทิลิตี้เครือข่ายได้รับ คุณต้องติดตั้งแพคเกจ การผูกยูทิลิตี้:

# yum -y ติดตั้ง bind-utils

การกำหนดค่า 802.1Q VLAN บน CentOS 7

หากต้องการเพิ่มอินเทอร์เฟซที่ติดแท็กบน CentOS คุณต้องตรวจสอบการรองรับเคอร์เนลก่อน 8021q:

#modprobe8021q

หากไม่มีข้อความแสดงข้อผิดพลาดแสดงว่าทุกอย่างเรียบร้อยดี โหลดโมดูลแล้ว หากไม่พบโมดูล ต้องสร้างโมดูลเคอร์เนลใหม่เพื่อรวมการสนับสนุนสำหรับโมดูลที่ต้องการ ในกรณีนี้ เรามาตรวจสอบว่าโมดูลโหลดแล้วหรือไม่:

# lsmod | grep 8021q 8021q 29022 0 การ์ป 14384 1 8021q mrp 18542 1 8021q

ทุกอย่างเป็นไปตามลำดับ โหลดโมดูล 8021q แล้ว มาเพิ่มลงใน autoload:

# echo 8021q >> /etc/modules-load.d/8021q.conf

ตอนนี้เราสร้างไฟล์การกำหนดค่าสำหรับ vlan ใน /etc/sysconfig/network-scripts:

#mcedit ifcfg-eth0.2000 VLAN=ใช่ DEVICE=eth0.2000 BOOTPROTO=คงที่ ONBOOT=ใช่ TYPE=Vlan IPADDR=192.168.100.2 NETMASK=255.255.255.0

ฉันดึงความสนใจของคุณไปที่ตัวหนา ในคำแนะนำทั้งหมดบนอินเทอร์เน็ตที่ฉันพบ พารามิเตอร์นี้ถูกระบุเป็น TYPE=อีเธอร์เน็ตแต่ด้วยการตั้งค่านี้ อินเทอร์เฟซที่มี vlan ไม่ขึ้น มีข้อผิดพลาดปรากฏขึ้น:

ข้อผิดพลาด: ไม่พบอุปกรณ์สำหรับการเชื่อมต่อ "ระบบ eth0.2000"

หลังจากที่ฉันแก้ไขทุกอย่างก็ทำงานได้ตามปกติ บันทึกและเปิดใช้งานอินเทอร์เฟซ:

# ifup eth0.2000 เปิดใช้งานการเชื่อมต่อสำเร็จ (เส้นทางที่ใช้งาน D-Bus: /org/freedesktop/NetworkManager/ActiveConnection/7)

ตรวจสอบ vlan ของเรา:

# ip l ls 1:lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc pfifo_fast สถานะโหมด UP DEFAULT qlen 1000 ลิงก์/อีเธอร์ 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff 3: [ป้องกันอีเมล]: mtu 1500 qdisc noqueue สถานะ UP mode DEFAULT link/ether 00:15:5d:01:0f:06 brd ff:ff:ff:ff:ff:ff

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

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

หลักสูตรออนไลน์ "Linux Administrator"

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

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

วิธีที่หนึ่ง
เราปิดใช้งานโปรโตคอล IPv6 สำหรับอินเทอร์เฟซทั้งหมดของระบบปฏิบัติการ เราจำเป็นต้องทำการเปลี่ยนแปลงไฟล์ /etc/sysctl.conf เปิดไฟล์ในตัว:

Vi /etc/sysctl.conf

เพิ่มบรรทัดต่อไปนี้:

net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

นอกจากนี้ยังอาจจำเป็นต้องปิดใช้งานโปรโตคอล IPv6 สำหรับแต่ละอินเทอร์เฟซ สมมติว่าชื่ออินเทอร์เฟซคือ enp0s3ในกรณีนี้ให้เพิ่มบรรทัดต่อไปนี้:

net.ipv6.conf.enp0s3.disable_ipv6=1

เราบันทึกการเปลี่ยนแปลงในไฟล์ จากนั้นใช้การเปลี่ยนแปลงในการกำหนดค่า:

Sysctl -p

วิธีที่สอง
หากคุณต้องการปิดใช้งาน IPv6 โดยไม่รีสตาร์ทการกำหนดค่า คุณสามารถใช้คำสั่งด้านล่างเพื่อทำการเปลี่ยนแปลงทันที

เสียงสะท้อน 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6 เสียงก้อง 1 > /proc/sys/net/ipv6/conf/default/disable_ipv6

ป้อนคำสั่งทีละคำสั่ง ทีละคำสั่ง คุณยังสามารถใช้คำสั่งต่อไปนี้:

Sysctl -w net.ipv6.conf.all.disable_ipv6=1

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

ปัญหา SSH หลังจากปิดใช้งาน IPv6
หากคุณมีปัญหากับ SSH หลังจากปิดใช้งาน IPv6 ให้ทำตามขั้นตอนเหล่านี้ เปิดไฟล์การกำหนดค่า /etc/ssh/sshd_config

Vi /etc/ssh/sshd_config

ค้นหาบรรทัด:

#AddressFamily ใด ๆ

ลองดูดังนี้:

ที่อยู่Family inet

หรือคุณสามารถยกเลิกการแสดงความคิดเห็น (ลบสัญลักษณ์ # ที่จุดเริ่มต้น) บรรทัด:

systemctl รีสตาร์ท sshd

ปัญหาเกี่ยวกับ Posfix หลังจากปิดใช้งาน IPv6
ปัญหาอาจปรากฏขึ้นพร้อมกับ Postfix หลังจากปิดใช้งาน IPv6 เพื่อแก้ไขสถานการณ์ คุณต้องทำตามขั้นตอนต่อไปนี้
การเปิดไฟล์การกำหนดค่า /etc/postfix/main.cf:

/etc/postfix/main.cf

ค้นหาสตริง inet_interfacesที่มีความหมาย โลคัลโฮสต์และแสดงความคิดเห็นโดยเหลือเพียงบรรทัดที่มีค่า 127.0.0.1

#inet_interfaces=localhost inet_interfaces=127.0.0.1 systemctl รีสตาร์ท postfix

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

โพสต์อธิบายขั้นตอนการปิดใช้งาน IPv6 บน CentOS/RHEL 7 มี 2 วิธีในการทำเช่นนี้:
1. ปิดการใช้งาน IPv6 ในโมดูลเคอร์เนล (ต้องรีบูต)
2. ปิดการใช้งาน IPv6 โดยใช้การตั้งค่า sysctl (ไม่ต้องรีบูต)

ในการตรวจสอบว่าเปิดใช้งาน IPv6 หรือไม่ ให้ดำเนินการ:

# ifconfig -a | grep inet6 inet6 fe80::211:aff:fe6a:9de4 คำนำหน้าlen 64 scopeid 0x20 inet6::1 คำนำหน้าlen 128 scopeid 0x10

1. ปิดการใช้งาน IPv6 ในโมดูลเคอร์เนล (ต้องรีบูต)

1. แก้ไข /etc/default/grub และเพิ่ม ipv6.disable=1 ในบรรทัด GRUB_CMDLINE_LINUX เช่น:

# cat /etc/default/grub GRUB_TIMEOUT=5 GRUB_DEFAULT=บันทึกแล้ว GRUB_DISABLE_SUBMENU=จริง GRUB_TERMINAL_OUTPUT="คอนโซล" GRUB_CMDLINE_LINUX="ipv6.disable=1 crashkernel = auto rhgb เงียบ" GRUB_DISABLE_RECOVERY = "จริง"

2. สร้างไฟล์การกำหนดค่า GRUB ใหม่และเขียนทับไฟล์ที่มีอยู่:

# grub2-mkconfig -o /boot/grub2/grub.cfg

3. รีสตาร์ทระบบและตรวจสอบว่าไม่มีบรรทัด "inet6" ในเอาต์พุตคำสั่ง "ip addr show"

# ปิด -r ทันที

# แสดง ip addr | เกรปเน็ต6

2. ปิดการใช้งาน IPv6 โดยใช้การตั้งค่า sysctl (ไม่ต้องรีบูต)

1. ต่อท้ายบรรทัดด้านล่างใน /etc/sysctl.conf:

net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1

2. เพื่อให้การตั้งค่ามีผล ให้ดำเนินการ