Cố gắng hiểu cách chính xác để tạo tuyến tĩnh trong CentOS, vui lòng hỗ trợ


8

Tôi đã cố gắng hiểu cách chính xác để thêm tuyến tĩnh trên máy CentOS 6.x. Trong một số diễn đàn, họ nói sẽ tạo một tệp có tên route-dev_name(ví dụ: route-eth0) với tuyến có liên quan và đặt nó vào /etc/sysconfig/network-scripts, trong một số diễn đàn họ nói rằng tệp nên được đặt tên static-routes, trong cả hai trường hợp tôi không thể đặt tuyến tĩnh. Có vẻ như trong một số bản phát hành CentOS, nó chỉ hoạt động khi đặt tên tệp route-dev_namevà trong một số bản phát hành chỉ hoạt động khi đặt tên tệp static-routes.. Có ai có thể vui lòng hỗ trợ tôi không? Đây là nội dung của tệp lộ trình của tôi:

192.168.20.0/24 via 192.168.20.253 dev eth0

Cảm ơn trước


Tôi đang sử dụng các phiên bản CentOS khác nhau trên các máy chủ khác nhau, nhưng chủ yếu là CentOS 6.3-6.5
Itai Ganot 17/214

Câu trả lời:


7

Các tuyến đường phụ thuộc thiết bị theo phong cách RH được xác định bằng /etc/sysconfig/network-scripts/route-devicecác tệp đã gây ra nhiều vấn đề.

Vì vậy, các hệ thống thực tế chỉ sử dụng /etc/sysconfig/static-routestệp mà không phụ thuộc vào thiết bị:

any net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1

Các vấn đề:

  • Khi các thiết bị vật lý được liên kết, bạn cũng cần phải nhớ cơ hội định tuyến tệp thiết bị
  • Khi bạn tổ chức lại bộ điều hợp trong một máy ảo.

Đương nhiên, người ta phải luôn luôn sử dụng các thiết bị cầu nối , vì vậy người ta có thể tránh các sự cố tệp thiết bị định tuyến.

Cũng lưu ý cú pháp trong /etc/sysconfig/static-routestệp, sniplet từ /etc/init.d/network:

    # Add non interface-specific static-routes.
    if [ -f /etc/sysconfig/static-routes ]; then
       if [ -x /sbin/route ]; then
           grep "^any" /etc/sysconfig/static-routes | while read ignore args ; do
               /sbin/route add -$args
           done
       else
           net_log $"Legacy static-route support not available: /sbin/route not found"
       fi
    fi

8

Tạo một tệp trong / etc / syconfig / network-scripts / route-eth0

thêm thêm sau đây

192.168.20.0/24 via 192.168.20.253 dev eth0

Tôi đã luôn luôn sử dụng phương pháp này. Tôi đã tìm thấy điều này là cách tiếp cận tốt nhất.

FYI: Kiểm tra - https://access.redhat.com/site/documentation/en-US/Red_Hat_ Entryprise_Linux / 6 / html / Dep_


1
Được rồi, đó là cách tiếp cận mà tôi đã sử dụng cho đến bây giờ, nhưng gần đây trên các máy CentOS 6.5 tôi thấy rằng route-devXtệp đang bị bỏ qua và các máy chủ không lên tuyến khi máy chủ được khởi động lại hoặc dịch vụ mạng được khởi động lại, bất kỳ ý tưởng nào Điều gì có thể gây ra nó?
Itai Ganot

Không chắc chắn .. Giao diện có khởi động khi khởi động / khởi động lại không? .. Tôi không có ATM hộp kiểm tra CENTOS / RHEL 6.5 .. Tôi không chắc chắn liệu có bất kỳ thay đổi nào trong tuyến đường ifup trên RHEL 6.5 không.
vijay rajah

Phải, các giao diện hoạt động đúng ... chỉ có tuyến đường không xuất hiện và tôi đang nói về máy mới cài đặt hoặc khoảng 2-3 tháng tuổi. Dù sao, tôi thấy rằng tôi sử dụng phương pháp đúng nên tôi sẽ chấp nhận câu hỏi của bạn, cảm ơn.
Itai Ganot

4

Có một cách dễ dàng hơn để thêm các tuyến đường ...

Tệp này - /etc/init.d/network- được khởi chạy khi PC khởi động và nó sử dụng tệp /etc/sysconfig/static-routesđể thêm các tuyến tĩnh

Bạn phải tạo ra nó bởi vì nó không tồn tại.

Nếu bạn đọc kỹ tệp /etc/init.d/network, nó sẽ đọc trong tệp này từng dòng để thêm tuyến, những dòng đó phải bắt đầu bằng "bất kỳ" và "tuyến thêm -" đã được biết.

Vì vậy, trong tệp bạn sẽ tạo >> / etc / sysconfig / static-tuyến, bạn phải viết:

any net 10.0.0.0 netmask 255.255.255.0 gw 192.168.0.1 eth0
  • trong đó 10.0.0.0/24 là mạng bạn muốn tiếp cận (255.255.255.0 là mặt nạ)
  • trong đó gw 192.168.0.1 là cổng để tiếp cận (chắc chắn là bộ định tuyến)
  • Trong đó eth0 là giao diện nơi sử dụng.

Đây là cách tốt nhất để thêm các tuyến tĩnh, 1 tệp cho mọi thứ (không phải tệp X cho giao diện X)


1

Tôi luôn sử dụng route-ethXcách tiếp cận tệp trên CentOS 6.4 và 6.5:

Tạo / chỉnh sửa tệp /etc/sysconfig/network-scripts/route-ethX(trong đó X là số giao diện của bạn) và đặt tuyến đường của bạn trong tệp này:

192.168.20.0/24 via 192.168.20.253 dev eth0

Bạn cũng có thể chỉnh sửa tệp này bằng định dạng sau (cá nhân tôi thích cú pháp đầu tiên):

GATEWAY0=192.168.20.253
NETMASK0=255.255.255.0
ADDRESS0=192.168.20.0

Sau đó khởi động lại mạng để áp dụng các thay đổi:

service network restart

Đọc thêm: https://www.centos.org/docs/5/html/5.2/Deployment_Guide/s1-networkscripts-static-routes.html


0

Trong / etc / sysconfig / tập lệnh mạng có tập lệnh ifup-tuyến . Nó tìm kiếm các tệp có tên route-dev_name, ví dụ: route-eth0.


0

Trong trường hợp của tôi, tập tin " / etc / sysconfig / network-scripts / route-device " không tồn tại.

Tôi tiến hành thêm mạng hoặc ip cần thiết vào tệp " / etc / sysconfig / static-tuyến " và để làm cho nó vĩnh viễn, tôi khởi động lại máy và nó hoạt động như mong đợi.

nó đã được thực hiện trong một: cat /etc/centos-release CentOS Linux release 7.5.1804 (Core)

Trân trọng,

Manuel Lazo

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.