2012-09-21 43 views
32

Tài liệu liệt kê rằng địa chỉ mac của máy ảo có thể được đặt trong Vagrantfile, tuy nhiên mọi thứ tôi thêm dường như kết thúc là lỗi cú pháp. Bất cứ ai đã làm điều này thành công?Đặt địa chỉ mac của VM trong Vagrant

+0

Chi tiết lỗi, vui lòng? –

+0

http://vagrantup.com/v1/docs/config/vm/network.html cũng sẽ hữu ích! –

Trả lời

35

Tôi sử dụng này:

config.vm.network :bridged , :mac => "080027XXXXXX" 

và nhận được những gì tôi muốn.

Tài liệu không rõ ràng về cú pháp của băm tùy chọn là gì và dường như không có ví dụ về hình thức này. Vậy, đây rồi! Bridged với một địa chỉ mac (chỉnh sửa tất nhiên). Điều này mang lại eth1 với mac được chỉ định, làm cho máy chủ DHCP của tôi hạnh phúc, và cung cấp cho nó một fqdn thích hợp trên mạng của tôi.

+1

Điều này phù hợp với mạng cầu nối. Tuy nhiên, các tương đương giả định cho mạng ': hostonly' vượt qua trình phân tích cú pháp cú pháp, nhưng không thay đổi địa chỉ mac (ít nhất là cho VirtualBox). 'config.vm.network: hostonly," 192.168.33.10 ", mac:" 5CA1AB1E0001 "' 'config.vm.network: hostonly," 192.168.33.10 ",: mac =>" 5CA1AB1E0001 "' – Phil

+0

Tôi hiểu điều này lỗi: 'Loại mạng 'cầu nối' không hợp lệ. Vui lòng sử dụng loại mạng hợp lệ.' - Giải quyết nó bằng chữ inrtead này: ' ' config.vm.network "private_network", ip: "192.168.33.33", mặt nạ mạng: "255.255.255.0", mac: "080027e35dfe" '- mac đã thay đổi, nhưng bây giờ tôi ** không thể kết nối với mashine nữa! ** 'Phương thức xác thực SSH: khóa riêng ' Làm cách nào để đặt lại khóa cá nhân? – rubo77

+0

Bạn đã thử hoàn nguyên cấu hình MAC mà bạn đã đặt ở trên chưa?Nếu không có gì khác thay đổi và bạn đang nhận "Phương thức xác thực SSH: khóa riêng" có nghĩa là bạn không kết nối với cùng một máy, có thể thực hiện được nếu bạn đang thiết lập MAC sang cùng địa chỉ với một máy khác mạng của bạn. câu trả lời – Benjamin

16

Đây là một câu hỏi cũ, nhưng tôi đã có cùng một vấn đề ngay bây giờ. Vagrant documentation v2 vẫn có vẻ không đầy đủ. Cuối cùng tôi đã sử dụng dòng này trong Vagrantfile với lang thang 1.2.7:

config.vm.network "public_network", :bridge => 'enp4s0', :mac => "5CA1AB1E0001" 

này:

  • thiết lập giao diện máy chủ có tên là 'enp4s0' như giao diện cầu,
  • mà như ' eth0' trên vị khách sau đó sẽ được gán một địa chỉ iP của DHCP cùng dẫn chương trình sử dụng
  • Cũng đặt 5C: A1: AB: 1E: 00: 01 là địa chỉ mac của khách
+0

gmoney đã quyết định cho tôi lỗi này:. "Có lỗi trong cấu hình của máy này Hãy sửa các lỗi sau đây và thử lại: vm:. * Loại mạng 'cầu nối' không hợp lệ Vui lòng sử dụng một mạng lưới hợp lệ loại Giải pháp " raddaqii 's làm việc cho tôi –

7

hmm, cấu hình mạng không hỗ trợ trong trường hợp của tôi. Sau khi xác định Địa chỉ MAC trực tiếp trong Vagrantfile qua config.vm.base_mac = "MyEth0MacAddressWithoutSlashes" máy của tôi đã bắt đầu =)

1

Thông tin được cung cấp bên dưới đã lỗi thời. Theo tài liệu cho phép IP được chỉ định thông qua DHCP chỉ cần sử dụng:

config.vm.network "public_network" 

Bằng cách này bạn không cần phải xử lý địa chỉ mac, nó sẽ tự phát sinh. Nếu bạn cần tùy chỉnh địa chỉ mac gắn vào thiết bị mạng thì:

config.vm.network "public_network", :mac=> "080027xxxxxx" 
2

On Vagrant phiên bản 2.0.1, tôi viết trong Vagrantfile cho một private_network (nhà cung cấp = VirtualBox; phiên bản 5.2.0):

config.vm.network "private_network", ip: "X.X.X.X", mac: "080027xxxxxx" 
Các vấn đề liên quan