如何在 vagrant 中使用 ubuntu 启用混杂模式?

如何在 vagrant 中使用 ubuntu 启用混杂模式?

这里还有其他类似的问题,但没有一个答案对我有用。

我可以使用 ubuntu 成功启用 virtualbox 设置的混杂模式,并使用 vagrant 配置

vb.customize ["modifyvm", :id, "--nicpromisc3", "allow-all"]

我可以看到在 virtualbox 中设置已成功更改,但在 ubuntu 中,当我执行时它似乎没有启用

ip a

我明白了

3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0d:13:2a:3a:23 brd ff:ff:ff:ff:ff:ff
    inet 192.168.15.10/24 brd 192.168.92.255 scope global enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe1f:5c51/64 scope link 
       valid_lft forever preferred_lft forever

我正在使用流浪者形象-

config.vm.box = "ubuntu/xenial64"

主机使用的是 macos 10.13.6

答案1

解决方案是向 rc.local 添加一些配置。我使用 Ansible 的解决方案是

- name: insert/update block in /etc/rc.local
  blockinfile:
    path: /etc/rc.local
    backup: yes
    content: |
      #promiscuous mode required for routing
      /sbin/ifconfig {{ vpn_nic }} up
      /sbin/ifconfig {{ vpn_nic }} promisc
  when: configure_gateway|bool
  tags:
  - init

- name: execute and check with netstat
  shell: |
    /etc/rc.local
    netstat -i
  register: netstatout
  become: true
  tags:
  - init

- debug:
    msg: "{{ netstatout.stdout }}"

相关内容