วิธีปิดการใช้งาน NAT สำหรับ IPv6 (NAT66)


9

Ubuntu LTS ปัจจุบันไม่สนับสนุนตาราง NAT สำหรับ IPv6 (เช่นไม่มีip6tables -t nat) และฉันก็ใช้ได้กับมันจริง ๆ แล้วสภาพแวดล้อม NAT-less นั้นเป็น "แกนหลัก" ของเครือข่ายของฉัน

แต่ Ubuntu LTS ตัวต่อไปจะเพิ่มการรองรับตาราง IPv6 NAT และปัญหาคือฉันมี "คำสั่ง" เพื่อไม่อนุญาตภายในเครือข่าย IPv6 ของฉันฉันหมายความว่าเราจะไม่สนับสนุน NAT66 (NAT สำหรับ IPv6)

ดังนั้นฉันต้องแน่ใจว่ามันip6tables -t natจะไม่ทำงานที่นี่ ฉันจะปิดการใช้งานได้อย่างไร

ฉันสามารถขึ้นบัญชีดำของโมดูลเคอร์เนลได้ไหม sysctl?

คำตอบ:


6

โมดูล IPv6 NAT มีชื่อnf_nat_ipv6ดังนั้นจึงควรจะเพียงพอที่จะขึ้นบัญชีดำของโมดูลนั้น

sudo sh -c 'echo blacklist nf_nat_ipv6 >> /etc/modprobe.d/blacklist'

เทคนิคบัญชีดำนั้นใช้งานไม่ได้ nf_nat_ipv6 มีบัญชีดำ แต่ถ้าฉันเรียกใช้ "ip6tables -t nat -L -nv" โมดูลจะปรากฏขึ้น ได้โปรด NAT66 นั้นเป็นสิ่งที่ไม่พึงประสงค์โดยไม่จำเป็นและฉันต้องแน่ใจว่ามันถูกปิด
ThiagoCMC

1
แต่แล้วฉันจะทำลายแพ็คเกจ "linux-image-generic" ... และหลังจากการอัพเกรดระบบโมดูลที่น่าขนลุกจะปรากฏขึ้นอีกครั้ง ... ฉันไม่เข้าใจจริงๆว่าทำไมสิ่งนี้ถึงเปิดใช้งานโดยค่าเริ่มต้น NAT66 คือ ที่ไม่พึงประสงค์ ผู้คนจำเป็นต้องผ่าน NAT (ซึ่งเป็นเพียงการแก้ปัญหาของเครือข่าย IPv4) มากับพวก Ubuntu ... อย่าทำอย่างนี้ให้ฉันเป็นมืออาชีพในการปิดการใช้งาน NAT66 ... IPv6 ไม่ต้องการ NAT ใด ๆ สิ่งนี้จะนำปัญหามาสู่โลก (IPv6) ที่ไม่มีปัญหาใด ๆ :-P
ThiagoCMC

4
@ user2512727 ฉันไม่เข้าใจเหมือนกัน ไม่ควรเขียนโค้ดบิตนี้โดยเฉพาะให้ใช้งานเพียงอย่างเดียว
Michael Hampton

1
sudoส่วนหนึ่งของคำสั่งไม่ทำคุณความดี มันใช้กับechoคำสั่งเท่านั้น (ซึ่งไม่ต้องการสิทธิ์พิเศษ) การเปลี่ยนเส้นทางซึ่งต้องการสิทธิ์ดำเนินการก่อน sudo bash: /etc/modprobe.d/blacklist: Permission deniedดังนั้นคำสั่งเป็นเพียงการไปล้มเหลวด้วย แต่อาจecho blacklist nf_nat_ipv6 | sudo tee -a /etc/modprobe.d/blacklistจะทำงานได้ดีขึ้น
kasperd

1
@ThiagoCMC ทำไมคุณถึงพูดว่ามันถูกเปิดใช้งานโดยค่าเริ่มต้น? ถ้าคุณไม่สร้างกฎที่ต้องการโมดูลมันไม่ควรโหลด ที่กล่าวว่าฉันกลัวโมดูลดังกล่าวจะทำอันตรายมากกว่าดี กรณีการใช้งานที่สมเหตุสมผลสำหรับ NAT66 นั้นหายากมาก ฟังก์ชั่น NAT66 มีแนวโน้มที่จะถูกใช้โดยผู้ที่ได้สัมผัสกับ IPv4 มากเกินไปและตอนนี้ประสบกับความเข้าใจผิดว่า NAT เป็นความคิดที่ดี
rfc2460

0

วิธีที่เหมาะสมในการขึ้นบัญชีดำโมดูลเช่นนี้เป็นดังนี้:

ในไฟล์บัญชีดำของคุณใส่บรรทัดต่อไปนี้แทนที่ "(module_name)" ด้วยชื่อของโมดูลตามที่แสดงใน lsmod

install (module_name) /bin/false

นี่เป็นคำสั่งระดับเคอร์เนลและไม่เฉพาะเจาะจงสำหรับการแจกจ่ายใด ๆ คุณสามารถหาข้อมูลเพิ่มเติมเกี่ยวกับinstallคำสั่งman modprobe.confได้

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