Windows Server 2008: chỉ định địa chỉ IP mặc định khi NIC có nhiều địa chỉ


23

Tôi có một Máy chủ Windows có ~ 10 địa chỉ IP bị ràng buộc tĩnh. Vấn đề là tôi không biết cách chỉ định địa chỉ IP mặc định.

Đôi khi, khi tôi gán một địa chỉ mới cho NIC, địa chỉ IP mặc định sẽ thay đổi với IP cuối cùng được nhập trong cấu hình IP nâng cao trên NIC. Điều này có tác dụng (vì tôi sử dụng NAT) rằng IP công cộng đi cũng thay đổi.

Mặc dù vấn đề này hiện đang có trên Windows Server 2008.

Làm thế nào bạn có thể đặt địa chỉ IP mặc định trên một NIC khi nó có nhiều địa chỉ IP bị ràng buộc?

Có nhiều giải thích về vấn đề của tôi.

văn bản thay thế http://www.nmediasolutions.com/_images/probleme/ip.png

Đây là đầu ra của ipconfig:

DHCP Enabled. . . . . . . . . . . : No
Autoconfiguration Enabled . . . . : Yes
IPv4 Address. . . . . . . . . . . : 192.168.99.49(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.51(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.52(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.53(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.54(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.55(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.56(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.57(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.58(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.59(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.60(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.61(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.62(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.64(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.65(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.66(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.67(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.68(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.70(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.71(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.100(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.108(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.109(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.112(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
IPv4 Address. . . . . . . . . . . : 192.168.99.63(Duplicate)
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.99.1

Nếu tôi pathpingtrả lời thì câu trả lời đầu tiên là 99,49, nếu địa chỉ IP mặc định của tôi là 99.100

Tracing route to www.l.google.com [72.14.204.99]
over a maximum of 30 hops:
  0  Machine [192.168.99.49]

Có bảng định tuyến trên máy:

 Network Destination        Netmask          Gateway       Interface  Metric
              0.0.0.0          0.0.0.0     192.168.99.1    192.168.99.49    261
           10.10.10.0    255.255.255.0         On-link       10.10.10.10    261
          10.10.10.10  255.255.255.255         On-link       10.10.10.10    261
         10.10.10.255  255.255.255.255         On-link       10.10.10.10    261
         192.168.99.0    255.255.255.0         On-link     192.168.99.49    261
        192.168.99.49  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.51  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.52  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.53  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.54  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.55  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.56  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.57  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.58  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.59  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.60  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.61  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.62  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.64  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.65  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.66  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.67  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.68  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.70  255.255.255.255         On-link     192.168.99.49    261
        192.168.99.71  255.255.255.255         On-link     192.168.99.49    261
       192.168.99.100  255.255.255.255         On-link     192.168.99.49    261
       192.168.99.108  255.255.255.255         On-link     192.168.99.49    261
       192.168.99.109  255.255.255.255         On-link     192.168.99.49    261
       192.168.99.112  255.255.255.255         On-link     192.168.99.49    261
       192.168.99.255  255.255.255.255         On-link     192.168.99.49    261
            224.0.0.0        240.0.0.0         On-link     192.168.99.49    261
            224.0.0.0        240.0.0.0         On-link       10.10.10.10    261
      255.255.255.255  255.255.255.255         On-link     192.168.99.49    261
      255.255.255.255  255.255.255.255         On-link       10.10.10.10    261

Tôi nghĩ tuyến đường của tôi sẽ giống như:

Network Destination        Netmask          Gateway       Interface  Metric
              0.0.0.0          0.0.0.0     192.168.99.1    **192.168.99.100**    261
           10.10.10.0    255.255.255.0         On-link       10.10.10.10    261
          10.10.10.10  255.255.255.255         On-link       10.10.10.10    261
         10.10.10.255  255.255.255.255         On-link       10.10.10.10    261
         192.168.99.0    255.255.255.0         On-link     192.168.99.100    261
        192.168.99.49  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.51  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.52  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.53  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.54  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.55  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.56  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.57  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.58  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.59  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.60  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.61  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.62  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.64  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.65  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.66  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.67  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.68  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.70  255.255.255.255         On-link     192.168.99.100    261
        192.168.99.71  255.255.255.255         On-link     192.168.99.100    261
       192.168.99.100  255.255.255.255         On-link     192.168.99.100    261
       192.168.99.108  255.255.255.255         On-link     192.168.99.100    261
       192.168.99.109  255.255.255.255         On-link     192.168.99.100    261
       192.168.99.112  255.255.255.255         On-link     192.168.99.100    261
       192.168.99.255  255.255.255.255         On-link     192.168.99.100    261
            224.0.0.0        240.0.0.0         On-link     192.168.99.100    261
            224.0.0.0        240.0.0.0         On-link       10.10.10.10    261
      255.255.255.255  255.255.255.255         On-link     192.168.99.100    261
      255.255.255.255  255.255.255.255         On-link       10.10.10.10    261

Làm cách nào tôi có thể chắc chắn rằng địa chỉ IP được sử dụng trong hình ảnh (được cho là địa chỉ IP mặc định) sẽ được máy chủ của tôi sử dụng làm địa chỉ mặc định?

Câu trả lời:


11

Với Server 2008 Service Pack 2 (không phải R2), hoặc Vista SP2 và MS hotfix KB975808 có một giải pháp, mặc dù hơi vụng về. Bạn sẽ xóa tất cả các địa chỉ mà bạn không muốn làm nguồn, sau đó thêm lại từng địa chỉ tại dòng lệnh bằng cách sử dụng

Netsh int ipv4 add address <Interface Name> <ip address> skipassource=true

Các hotfix cho phép cờ "Bỏ qua như nguồn".

Để tìm hiểu sâu hơn về cách các phiên bản Windows khác nhau chọn IP nguồn, hãy xem bài đăng trên blog TechNet này .


6

Không có thứ gọi là "IP mặc định" cho giao diện mạng; thay vì bảng định tuyến hệ thống của bạn xác định giao diện logic nào sẽ được sử dụng khi giao tiếp với các thiết bị khác.

Có vẻ như những gì bạn muốn làm là cấu hình một tuyến đường mặc định. Điều này sẽ khiến tất cả các cuộc hội thoại do máy này khởi tạo được thực hiện từ một IP cụ thể.

Sử dụng tuyến đường thêm để thêm một cổng mặc định


Làm thế nào tôi có thể thay đổi bảng định tuyến của mình, thực sự là 99,49 tôi cần tuyến mặc định là 99.100
Cédric Boivin

Cổng mặc định là tuyến mặc định và ngược lại. Đó chỉ là một vấn đề về thuật ngữ.
Kevin M

Tôi biết điều đó, nhưng không thể thay đổi tuyến đường mặc định. Làm thế nào tôi có thể thay đổi nó? Các công thức lệnh chính xác là gì
Cédric Boivin

1
Bạn có thể thử điều này: "tuyến đường thêm mặt nạ 0.0.0.0 0.0.0.0 192.168.99.100 số liệu 2"
Jeff Miles

Nếu tôi làm điều đó, không tôi không thể truy cập internet nữa vì đó là một cổng sai.
Cédric Boivin

2

Tình hình của bạn không hoàn toàn rõ ràng, nhưng nếu tôi hiểu đúng:
1) Tại sao bạn không đặt IP "cần phải là mặc định" của mình sau cùng?

2) Hoặc, có thể bạn có thể thử điều này (giả sử rằng địa chỉ cổng là 192.168.99.1):

route delete 0.0.0.0
route -p add 192.168.99.1 mask 255.255.255.255 192.168.99.100
route -p add 0.0.0.0 mask 0.0.0.0 192.168.99.1 192.168.99.100

Để có thêm thông tin về cú pháp của lệnh "tuyến đường", hãy xem tại đây: http://www.microsoft.com/resource/documentation/windows/xp/all/proddocs/en-us/route.mspx?mfr=true


Không làm việc, lệnh không tốt. Lỗi, không thể tìm thấy tệp được chỉ định
Cédric Boivin

thử mà không có "nếu": tuyến -p thêm mặt nạ 192.168.99.1 255.255.255.255 192.168.99.100 nhưng nó sẽ hoạt động, bạn có thể trích dẫn erroe không?
Alexey Shatygin

Lần này, không có thông báo lỗi, nhưng điều đó không thay đổi gì cả
Cédric Boivin

Nó sẽ thay đổi bảng định tuyến của bạn. Bạn có thể thực hiện "in tuyến đường", lệnh này và "in tuyến đường" một lần nữa và đặt đầu ra ở đây không?
Alexey Shatygin

Và, trước khi thực hiện lệnh tôi đã đăng, hãy thực hiện "xóa tuyến đường 0.0.0.0"
Alexey Shatygin

1

Bạn có thể không sử dụng số liệu trên các địa chỉ IP? Trong thuộc tính TCP / IP, bỏ chọn Số liệu tự động và gán một số tĩnh có giá trị thấp hơn 261 (như trong ảnh chụp màn hình của bạn) cho địa chỉ bạn muốn cho mặc định của mình.


Tôi sẽ thử nó, đó là một ý tưởng tốt.
Cédric Boivin

Đừng làm việc, hãy xem sửa đổi của tôi trên bài viết của tôi.
Cédric Boivin

Có cách nào để thay đổi địa chỉ giao diện không?
Cédric Boivin

1

Một lệnh có dạng:
> tuyến thêm 0,0.0.0 mặt nạ 0.0.0.0 192.168.99.1 số liệu xxx nếu yyy
sẽ thay đổi địa chỉ nhìn thấy khi máy đi đến bất kỳ địa chỉ không phải 192.168.99.0 / 24 và không phải 10.10.10.0 / 24 . Đó là, khi cổng mặc định được sử dụng. Số liệu (xxx) phải cao hơn bất kỳ thứ gì khác để đảm bảo quy tắc được sử dụng. Giao diện (yyy) phải là giao diện để sử dụng. Nhưng, tôi không nghĩ có cách nào để kiểm soát địa chỉ IP nào trên giao diện đó để sử dụng nếu có nhiều địa chỉ IP.
> tuyến đường thêm mặt nạ 192.168.99.0 255.255.255.0 nếu yyy
tương tự nhưng dành cho bất kỳ địa chỉ 192.168.99.0/24 nào mà hệ thống truy cập. Thực tế là việc gán nhiều địa chỉ IP cho một giao diện có thể có các loại vấn đề này.


1

Tôi đã có thể sao chép vấn đề của bạn: có vẻ như Windows sử dụng địa chỉ IP được gán thấp nhất trên giao diện mạng nhất định là giao diện "gửi đi", bất kể thứ tự thực tế mà chúng được gán.

Tôi không thể tìm thấy bất kỳ tài liệu nào về hành vi này, nhưng tôi khá chắc chắn đó là do thiết kế.


Chỉnh sửa

Tôi nghĩ rằng điều này thực sự không thể được thực hiện ở cấp độ HĐH, nhưng nó có thể được thực hiện bằng mã trong ứng dụng của bạn: một ổ cắm có thể được ràng buộc rõ ràng với một cặp địa chỉ / cổng IP đã chọn trước khi kết nối nó với điểm cuối từ xa. Nhưng bạn sẽ phải sử dụng các thư viện cấp thấp hơn các thư viện dịch vụ web tiêu chuẩn. IE bạn sẽ phải tự mở một ổ cắm, kết nối và sử dụng nó để đọc / ghi dữ liệu.

Ví dụ .NET / C #:

using System.Net;
using System.Net.Sockets;

IPAddress local_addr = IPAddress.Parse("192.168.99.100");
IPAddress remote_addr = IPAddress.Parse("1.2.3.4");

int local_port = 4242;
int remote_port = 80;

IPEndPoint local_ep = new IPEndPoint(local_addr,local_port);
IPEndPoint remote_ep = new IPEndPoint(remote_addr,remote_port);

Socket s = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);

s.Bind(local_ep);

s.Connect(remote_ep);

// Now use the socket to talk to the remote host

Điều này sẽ mở một kết nối tới 1.2.3.4:80 có nguồn gốc từ 192.168.99.100:4242, vì vậy máy chủ từ xa sẽ thấy nó đến từ chính xác địa chỉ IP đó.

Đã thử và kiểm tra bằng cách kết nối với IIS, nó ghi nhật ký yêu cầu đến từ địa chỉ IP được chỉ định.


Tôi đọc một cái gì đó có thể là một comparaison nhị phân với địa chỉ IP?
Cédric Boivin

1
Có, so sánh nhị phân rất có thể là cách "thấp nhất" được chọn; Mặc dù vậy, tôi chưa thử với các IP thuộc các mạng con khác nhau.
Massimo

Vấn đề lớn nhất của tôi tại thời điểm này là tôi đã có hơn 300 trang web trên nhiều địa chỉ ip và khi máy chủ của tôi truy cập internet để gọi một máy chủ khác (dịch vụ web), tôi không thể chắc chắn rằng máy chủ của tôi sẽ có.
Cédric Boivin

Cảm ơn câu trả lời này nhưng trong kịch bản của tôi, không thể áp dụng giải pháp này. Các giải pháp cần đến từ HĐH, hoặc có thể là tường lửa. Đó là một cách tốt để giải quyết vấn đề bằng ứng dụng, nhưng chúng tôi đi đến nhiều ứng dụng, để giải quyết rắc rối trên mỗi trang web.
Cédric Boivin

Nhưng ngay cả khi bạn có thể làm như bạn muốn, bạn không thể làm cho các trang web khác nhau sử dụng các IP khác nhau; bằng cách này, bạn có thể :-)
Massimo

1

Lựa chọn địa chỉ nguồn cho một cuộc gọi đi được xử lý khác nhau bởi ngăn xếp TCP / IP kể từ khi đại tu Vista. Trong XP / 2003 trở về trước, địa chỉ nguồn được xác định bởi bảng tuyến khi không được khai báo rõ ràng bởi ứng dụng thực hiện cuộc gọi đi. Kể từ Vista / 2008, địa chỉ nguồn có thể được xác định theo mối quan hệ tiền tố với địa chỉ cổng đích hoặc địa chỉ cổng tiếp theo nếu đích không phải là cục bộ. Bài viết trên Blog Technet giải thích sự thay đổi hành vi rất tốt.

http://bloss.technet.com/b/networking/archive/2009/04/24/source-ip-address-selection-on-a-multi-homed-windows-computer.aspx


1

Tôi có phiên bản Windows 2008 R2 SP1 x64 Enterprise đang được sử dụng làm máy chủ Web với One NIC.

Tôi gặp vấn đề tương tự được mô tả ở trên. Tôi muốn các kết nối Ngoài được xử lý bởi địa chỉ IP mặc định (địa chỉ được ký với máy chủ) nhưng nó vẫn chọn ngẫu nhiên địa chỉ IP trong số 10 địa chỉ IP của tôi cho 10 trang web của tôi trên máy chủ đó.

Tất cả đều hiển thị dưới dạng địa chỉ IP ưa thích nếu bạn chạy lệnh sau.

Netsh int ipv4 show ipaddresses level=verbose

Tôi đã thử tải xuống Hot Fix nhưng vì một số lý do (và tôi đã nhân đôi, kiểm tra ba lần) nó nói rằng "nó không thể chạy trên phiên bản HĐH này). Nếu các bạn muốn thử ở đây .

Nếu bạn có máy chủ MS DNS đang chạy, bạn sẽ thấy rằng tên máy chủ SAME sẽ được đăng ký 11 lần (trong trường hợp của tôi) 1 IP cho máy chủ và 10 IP cho mỗi trang web.

Những gì tôi tin rằng nó có thể là một CÔNG VIỆC (tại thời điểm này, trừ khi người khác có giải pháp tốt hơn)

Là để đi đến máy chủ windows theo thuộc tính TCP nơi bạn đã nhập địa chỉ IP cho Máy chủ và Trang web, bạn sẽ thấy có tab DNS. Bây giờ UNCHECK ĐĂNG KÝ KẾT NỐI ĐỊA CHỈ và TẢI LẠI máy chủ (và không được kiểm tra).

Nếu bạn kiểm tra máy chủ DNS, tất cả các mục DNS có IP sẽ biến mất.

Bây giờ, nhập MANUALLY trong DNS tên máy chủ và địa chỉ IP ưa thích . Và nó sẽ khắc phục vấn đề.

Nếu bất kỳ bạn có bất kỳ giải pháp tốt hơn xin vui lòng chia sẻ với chúng tôi.

Gripe: Không chắc tại sao MS không khắc phục vấn đề này. Họ nên tạo một tùy chọn (như hộp kiểm) cho các máy chủ mang nhiều địa chỉ IP trên cùng một mạng con để bạn chọn địa chỉ IP nào sẽ được ưu tiên.


0

'Địa chỉ mặc định' là địa chỉ được đặt trong hộp nhập đầu tiên trên các thuộc tính thẻ giao diện vì nó sẽ trả lời theo mặc định với địa chỉ này, tất cả các địa chỉ khác được coi là thứ yếu.

(Máy chủ ISA là một ví dụ điển hình cho hành vi đó vì bạn không thể yêu cầu nó trả lời bằng IP mà nó đã liên hệ với ...)


Nó giả sử là như vậy, nhưng không hoạt động. Trong trường hợp của tôi, ip 99,49 nằm trong cấu hình nâng cao và 99.100 là người chỉ định trong thuộc tính của ipv4 ....
Cédric Boivin

Điều này thực sự kỳ lạ vì cơ sở hạ tầng của chúng tôi ở đây sử dụng rất nhiều cho các bộ lọc và công cụ máy chủ web. Bạn đã thử xóa tất cả IP khỏi các thuộc tính thẻ ngoại trừ IP bạn muốn được mặc định, áp dụng và đặt chúng trở lại sau đó chưa?
Alexandre Nizoux

Có tôi thử nó, và vấn đề tương tự xảy ra khi tôi nhập 99,49
Cédric Boivin

99,49 là thấp nhất trong số IP của bạn?
Alexandre Nizoux

Vâng, đó là bạn có thể nhìn ipconfig của tôi trên đầu trang
Cédric Boivin

0

Tôi tìm thấy một giải pháp:

  • trên nic chính của bạn, xóa IP bạn muốn làm mặc định, xóa gw mặc định, cung cấp cho nó số liệu cao (ví dụ: 50)
  • thêm nic thứ cấp, cung cấp IP mà bạn muốn làm 'mặc định', đặt GW mặc định ở đây và trên tab nâng cao đặt số liệu thấp nhất (ví dụ: 1)

Điều này hoạt động trong 2008R2 / IIS7 của tôi với 20 địa chỉ IP.

BR, Matija


0

Tôi đã giải quyết nó bằng cách thay đổi netmask thành 255.255.255.255tất cả các địa chỉ bổ sung và chỉ giữ nguyên địa chỉ mặc định.

Tôi hy vọng điều này giải quyết cho bạn!

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.