2013-03-26 34 views
5

Tôi có cơ sở dữ liệu SQL Azure và Máy ảo Azure với một ứng dụng kết nối với cơ sở dữ liệu.Kết nối với SQL Azure từ Azure VM - IP nội bộ hoặc số VIP công cộng

  • Chúng nằm trong cùng một trung tâm dữ liệu và dưới cùng đăng ký Azure .

  • Tôi đã thêm IP ảo công khai của máy ảo vào danh sách các địa chỉ IP được phép trong trang cấu hình máy chủ của cổng quản lý .

  • Dịch vụ Windows Azure được đánh dấu "Có" trong phần "Dịch vụ được phép" .

Khi cố gắng để kết nối, tôi nhận được ngoại lệ: "Khách hàng có địa chỉ IP x.x.x.x 'không được phép truy cập vào máy chủ", trong đó x.x.x.x là IP nội bộ của máy ảo. Tôi do dự khi sử dụng IP nội bộ trong quy tắc IP được cho phép. Không nên SQL Azure xem IP công cộng của máy ảo trong khi kết nối?

Trả lời

2

Tôi do dự khi sử dụng IP nội bộ trong quy tắc IP được cho phép. Không nên SQL Azure xem IP công cộng của máy ảo trong khi kết nối?

Các cuộc gọi đang được thực hiện thông qua mạng nội bộ nên không bao giờ thực sự rời khỏi trung tâm dữ liệu. Tại sao không thêm một quy tắc như sau để chỉ cho phép các cuộc gọi nội bộ bằng cách mở dải IP sau trên cơ sở dữ liệu Azure:

10.0.0.0 to 10.0.0.255 

Trong trường hợp trên bạn không cần phải lo lắng về một IP thoáng qua trên VM của bạn.

+0

Sẽ không này có nghĩa là bất kỳ máy ảo khác bên trong trung tâm dữ liệu bao gồm người thuê nhà khác sẽ có thể kết nối với cơ sở dữ liệu? T – MikeJ

+1

Các VIP đứng cho các IP ảo và ở bên ngoài, công cộng và được đo. Các giá trị DIP là nội bộ, riêng tư và cân bằng tải. Azure cung cấp một API để khám phá các DIP của bạn - đừng cho rằng bạn biết chúng vì chúng là các KCN NĂNG ĐỘNG. Azure sẽ không cho phép bạn xem các DIP khác bên trong hệ thống. TÀI LIỆU THAM KHẢO: http://blog.mccrory.me/2010/12/13/microsoft-azure-cloud-top-20-lessons-learned-about-msfts-paas/ – QFDev

1

Có lẽ hãy thử nhìn vào các cmdlet xanh cho phép bạn quản lý quy tắc tường lửa bằng tập lệnh. Bạn có thể thêm một công việc khởi động để cập nhật một quy tắc cụ thể với IP mới vm nên nó thay đổi để di chuyển hoặc khởi động lại.

Specificially các lệnh PowerShell:

  • New-SqlAzureFirewallRule - Thêm một quy tắc tường lửa Sql Azure mới đến một máy chủ .
  • Get-SqlAzureFirewallRules - Trả lại quy tắc tường lửa cho máy chủ Sql Azure được chỉ định.
  • Xóa-SqlAzureFirewallRule - Loại bỏ quy tắc Sql Azure fireall hiện có.

Sql Azure Cmdlets

Các vấn đề liên quan