Chỉ định địa chỉ IP cho các kết nối ra trên một máy chủ nhiều ip


15

một trong các máy chủ của tôi (Debian 5.0.6) có hai địa chỉ IP công khai trên cùng một giao diện. Điều này được sử dụng để hoạt động tốt trong nhiều tháng nhưng đột nhiên nó đang sử dụng địa chỉ IP "sai" cho các kết nối đi. Đây là một vấn đề vì tra cứu ngược sẽ không khớp và do đó email nhận được điểm spam.

eth0      Link encap:Ethernet  Hardware Adresse 00:1b:21:14:8e:9c  
          inet Adresse:81.169.180.51  Bcast:81.169.180.51  Maske:255.255.255.255
          inet6-Adresse: fe80::21b:21ff:fe14:8e9c/64 Gültigkeitsbereich:Verbindung

eth0:0    Link encap:Ethernet  Hardware Adresse 00:1b:21:14:8e:9c  
          inet Adresse:85.214.157.120  Bcast:85.214.157.120  Maske:255.255.255.255


Kernel-IP-Routentabelle
Destination     Router          Genmask         Flags Metric Ref    Use Iface
81.169.180.1    0.0.0.0         255.255.255.255 UH    0      0        0 eth0
0.0.0.0         81.169.180.1    0.0.0.0         UG    0      0        0 eth0

Hiện tại nó đang sử dụng 85.214.157.120 cho các kết nối ra. Làm cách nào để sử dụng 81.169.180.51?

Chỉnh sửa : Netmask của 255.255.255.255 phù hợp với cả tài liệu và phản hồi DHCP của công ty lưu trữ. Gọi /etc/init.d/networking khởi động lại nhiều lần cuối cùng sẽ kết thúc với địa chỉ IP chính xác cho các kết nối vượt trội. Nhưng đó rõ ràng không phải là một giải pháp ổn định. /Biên tập

Chỉnh sửa 2 : Để đảm bảo rằng tuyến máy chủ không liên quan đến vấn đề của tôi, tôi thiết lập mạng thử nghiệm cục bộ:

eth0      inet Adresse:192.168.0.2  Bcast:192.168.0.255  Maske:255.255.255.0
eth0:0    inet Adresse:192.168.0.3  Bcast:192.168.0.255  Maske:255.255.255.0

192.168.0.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0        192.168.0.1     0.0.0.0         UG    0      0        0 eth0

Nếu bất cứ ai có ý tưởng làm thế nào để đảm bảo rằng địa chỉ ip nguồn 192.168.0.2 được sử dụng trên các kết nối tcp bên ngoài, tôi rất biết ơn. / Chỉnh sửa 2

Câu trả lời:


24

Cập nhật mặc định:

ip route change default via 81.169.180.1 src 81.169.180.51

Kiểm tra cấu hình:

ip route list

1
Làm thế nào để thực hiện điều này vĩnh viễn sau khi khởi động lại?
de chi

3

Câu trả lời của bindbn là tốt, nhưng tôi đã tìm thấy một số biến chứng.

1) Bạn nên kiểm tra "danh sách lộ trình ip" như bindbn nói. Một số quy tắc khác trong danh sách có thể được ưu tiên hơn tuyến đường mặc định. Bạn có thể cần xóa quy tắc đó hoặc tạo quy tắc hơi khác.

2) Tất cả các thay đổi được thực hiện thông qua lệnh ip chỉ hoạt động cho đến khi khởi động lại tiếp theo. Câu trả lời này Thêm vĩnh viễn các quy tắc định tuyến chính sách nguồn giải thích cách làm cho nó bền bỉ.

Tóm lại, bạn có thể thêm lệnh ip route mà bạn cần để chạy dưới dạng dòng "up" hoặc "post-up" vào / etc / network / interface. Bạn có thể thêm một dòng "xuống" tương ứng để loại bỏ tuyến đường.


1

Hãy thử thay đổi

 allow-hotplug eth0

đến

 auto eth0

Điều đó sẽ buộc giao diện vật lý của bạn đi lên đầu tiên. Bạn cũng có thể hoặc không cần thay đổi mục nhập cho phép cắm nóng cho eth0: 0.


1

Vì tò mò, tại sao địa chỉ IP của bạn có netmask là 255.255.255.255? Điều đó thực sự không khả thi, vì điều đó có nghĩa là toàn bộ địa chỉ là mạng. Không có chỗ cho chủ nhà. Thực tế là địa chỉ quảng bá của bạn giống với IP máy chủ của bạn cũng đáng lo ngại, nhưng có thể là do vấn đề netmask. Có vẻ như netmask của bạn phải là 255.255.255.0.

Điều này đã được thực hiện để cung cấp cho bạn hai máy chủ trên cùng một mạng con? Có thể tốt hơn là chỉ cần thực hiện một thay đổi để mỗi giao diện nằm trên một mạng con khác nhau. 255.255.255.128 sẽ đặt eth0 và cổng của bạn (của 81.169.180.1) trên cùng một mạng con, với eth0: 0 trên một mạng con riêng biệt. Tuy nhiên, điều đó có nghĩa là eth0 chỉ có thể giao tiếp với 81.169.180.1-81.169.180.127. Và eth0: 0 đi từ 129-254. Nhưng điều đó đang được nói, tôi thực sự không thể hiểu tại sao thiết lập hiện tại của bạn hoạt động cả.

Bây giờ, điều này sẽ gây ra các vấn đề bạn nhìn thấy ở trên? Tôi không thể thấy một liên kết trực tiếp, nhưng nó có thể.
Đó chắc chắn là thứ tôi muốn chỉnh sửa. Nếu điều đó không có ích, có lẽ bạn có thể giải thích lý do tại sao bạn có những thứ thiết lập theo cách này.


Chỉnh sửa: Điều này có hoạt động tốt trên máy chủ này không, hay nó là một máy / HĐH khác? Bất cứ ý tưởng những gì có thể đã thay đổi? Lý do tôi hỏi là vì Linux thực sự không thích có hai giao diện trên cùng một mạng con. Nó khiến tôi phát điên khi cố gắng làm việc này trên mạng riêng của mình. Có vẻ như bạn có thể làm việc này trên đúng IP, cho đến khi bạn khởi động lại / khởi động lại dịch vụ mạng. Sau đó, nó đã sử dụng giao diện sai. Tham khảo: http://anders.com/cms/258

Bạn cũng có thể thử ifdowntrên eth0: 0, sau đó thêm tuyến đường, sau đó đưa ifupnó trở lại. Điều đó có thể đảm bảo IP chính xác được sử dụng.

Thêm thủ công dev eth0 có thể giúp, nhưng có vẻ như tuyến đường đã được thực hiện đúng.


Chỉnh sửa thêm: Bạn có thể thử sử dụng các công cụ quản lý IP mới nhất trong Debian , iproute 2. ( Liên kết phụ ) Có vẻ như một cái gì đó dọc theo dòng của
Mangin lên giao diện: ip link set eth0 up

ip addr add 192.168.0.2/24 dev ethe0
ip addr add 192.168.0.3/24 dev eth0

Sau đó, thiết lập bảng định tuyến với
ip route add 10.0.0.0/16 via 192.168.0.2


--Christopher Karel


Một netmask 255.255.255.255 phù hợp với cả tài liệu của công ty lưu trữ và phản hồi DHCP. Theo Google, thông thường có 255.255.255.255 trên các mạng điểm-điểm. Theo như tôi có thể nói, công ty lưu trữ sẽ khá ngu ngốc khi sử dụng mạng không có điểm để đưa ra rủi ro bảo mật khi có các máy chủ không đáng tin cậy trong cùng một miền phát sóng lớp 2.
Hendrik Brummermann

Giống như Wolfgangsz đã nói ở trên, a / 32 không phải là tiêu chuẩn cho liên kết điểm tới điểm. Tôi biết a / 31 có thể được thực hiện, nhưng rõ ràng sẽ tắt các định danh phát sóng và mạng. "Tuyến máy chủ" mà bạn thấy được đề cập đề cập đến việc sử dụng nó trong các bảng định tuyến. ví dụ: Đó là một tuyến đến một máy chủ cụ thể, không phải đến một mạng. Do đó, sự xuất hiện của nó trong RFC mà bạn đã liên kết trên OSPF, một giao thức định tuyến. Điều đó đang được nói, nếu bạn chắc chắn rằng ISP của bạn hướng dẫn bạn làm điều đó với HĐH của bạn, thì bạn cũng có thể theo kịp.
Christopher Karel

OK, một vài chỉnh sửa được thực hiện, có thể giúp ích cho vấn đề ban đầu của bạn.
Christopher Karel

-1

Thiết lập hiện tại của bạn không thực sự hoạt động. Vì netmask cho cả hai giao diện là 255.255.255.255, không có chỗ cho một cổng. Tuy nhiên, để cung cấp bất kỳ lưu lượng có ý nghĩa, máy chủ của bạn cần một cổng. ISP cung cấp hai địa chỉ IP công cộng cũng sẽ cung cấp cho bạn cài đặt netmask và gateway cho cả hai địa chỉ IP.

Ví dụ (đây là máy chủ riêng của tôi và địa chỉ IP là có thật):

Bảng định tuyến IP kernel
Cổng đích Genmask Cờ Số liệu Tham khảo Sử dụng Iface
217.10.144.208 0.0.0.0 255.255.255.248 U 0 0 0 eth0
0,0.0.0 217.10.144.209 0.0.0.0 UG 0 0 0 eth0

Bản thân máy chủ nằm trên 217.10.144.210, nằm trong cùng mạng con với cổng (phải, nếu không, không có lưu lượng nào có thể được định tuyến). Có lẽ ISP cũng đang cung cấp cùng một mạng con cho một số khách hàng khác.

Nếu bạn đang ở trên máy chủ đó và bạn thực hiện ping đến cổng của mình, bạn sẽ nhận được thông báo "không có tuyến đường đến máy chủ".

Nói chuyện với ISP và nhận các cài đặt chính xác, sau đó cập nhật cấu hình giao diện của bạn, khởi động lại mạng và kiểm tra lại.


2
Một netmask 255.255.255.255 phù hợp với cả tài liệu của công ty lưu trữ và phản hồi DHCP. Theo Google, thông thường có 255.255.255.255 trên các mạng điểm-điểm. Theo như tôi có thể nói, công ty lưu trữ sẽ khá ngu ngốc khi sử dụng mạng không có điểm để đưa ra rủi ro bảo mật khi có các máy chủ không đáng tin cậy trong cùng một miền phát sóng lớp 2.
Hendrik Brummermann

Nếu bạn có mạng điểm-điểm, thì netmask của bạn sẽ là 255.255.255.252. Điều này sẽ cho phép hai máy chủ tạo thành hai điểm cuối, địa chỉ mạng và địa chỉ quảng bá. Đây là kịch bản bình thường cho những loại kết nối. Trong trường hợp của bạn, máy chủ khác sau đó sẽ là cửa ngõ của bạn đến phần còn lại của thế giới. Tôi không thực sự quan tâm những gì bạn khai thác trên google, nhưng đây là cách mạng TCP / IP hoạt động. Và rõ ràng nó không làm việc cho bạn. Tôi để lại kết luận cho bạn.
wolfgangsz

Cảm ơn bạn, nhưng phần này đang làm việc hoàn toàn tốt cho tôi. Nhân tiện, nó được gọi là "tuyến máy chủ" trong tiêu chuẩn Internet chính thức: rfc-editor.org/rfc/rfc 2328.txt
Hendrik Brummermann

Vấn đề của tôi cũng có thể tái tạo trên mạng cục bộ: ifconfig eth0 192.168.0.2 mask 255.255.255.0 / ifconfig eth0: 1 192.168.0.3 mask 255.255.255.0 / tuyến thêm gw 192.168.0.1 mặc định
Hendrik Brummermann
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.