没有DHCP的Internet共享


11

我正在尝试将运行10.6的iMac设置为无线网桥。我有它工作,但我需要禁用DHCP并让我的网络的DHCP服务器为连接的设备提供IP。我似乎找不到在Internet连接共享中禁用DHCP的方法。有谁知道这是否可能?我猜是有一个关键词可以插入 /Library/Preferences/SystemConfiguration/com.apple.nat.plist,但我找不到它。我检查了InternetSharing的手册页,除了更改DHCP服务器使用的子网外,它没有提到任何有用的内容。


AFAIK,OS X Internet Sharing仅执行NAT,而不是真正的桥接。因此,使用iMac进行连接的设备位于自己的专用网络上,而您的iMac则充当路由器。因此,连接的设备需要从您的iMac获取IP。他们将无法联系您现有的DHCP服务器。我不太熟悉互联网共享的内容,但这是我最好的准知情猜测。
robmathers 11 sep 2012 18:40

Answers:


1

来自 bootpd 手册页:

对于每个属性dhcp_enabled,bootp_enabled,   old_netboot_enabled,        netboot_enabled和relay_enabled,可以启用相应的服务或        对所有接口禁用,或仅为特定的一组接口启用。        要全局启用或禁用,请分别使用布尔值true或false。        要仅为特定的一组接口启用,请使用字符串        单个接口或字符串数​​组,每个接口一个元素。

 For example, to enable DHCP on interfaces en0 and en1, disable BOOTP on all
 interfaces, enable NetBoot on en1, and enable relay agent on interface en1,
 /etc/bootpd.plist could contain:
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
 <dict>
         <key>bootp_enabled</key>
         <false/>
         <key>dhcp_enabled</key>
         <array>
                 <string>en0</string>
                 <string>en1</string>
         </array>
         <key>netboot_enabled</key>
         <string>en1</string>
         <key>relay_enabled</key>
         <array>
                 <string>en1</string>
         </array>
 </dict>
 </plist>

要全局禁用dhcp,请使用:

    <key>dhcp_enabled</key>
    <false/>

别忘了送一个 SIGHUP (kill -1)bootpd 更改配置文件后。

dcow 4 nov 2016 22:58
source

2

InternetSharing正在执行两项任务:

  • 动态地为连接的设备提供IP地址 二级网络接口( bootpd
  • 为这些管理IP地址转换(NAT) 动态归因地址( natd 在Snow Leopard&amp; natpmpd 在狮子上)

Internet共享不允许您将Mac OS X配置为IP桥。 看到 man InternetSharing (适用于Snow Leopard,但不适用于Lion)。

这将是一个坏主意:最值得注意的是因为涉及的风险 一个简单大胆的透明桥: 内部 InternetSharing 正在表演:

sysctl -w 'net.inet.ip.forwarding=1'

允许任何IP流量通过。 为了缓解这个问题,只有二级接口上的IP地址才能通过 bootpd 并通过翻译 natd 要么 natpmpd 是 正确翻译到外面。

daniel Azuelos 11 sep 2012 21:38
source

感谢您的回复,Daniel。两个问题:(1)您对InternetSharing不允许禁用DHCP(并且您能提供任何证据/资源)的信心水平是多少? (2)请你详细说明为什么你认为这是一个坏主意?你说什么风险?再次,将赞赏证据和参考。谢谢
Matthew Boynes 12 sep 2012 02:01

由于你的问题,我试图改进我的解释。
daniel Azuelos 12 sep 2012 08:40

该手册页特别指出,“这里没有完整记录com.apple.nat.plist的详细信息......”因此完全有可能存在禁用DHCP的设置。不幸的是,我们仍然没有确凿的证据证明是否可以做到这一点。感谢您添加所有相同的细节
Matthew Boynes 12 sep 2012 12:52

事实上,我进一步阅读了手册页内的免责声明;)。我很确定在没有分叉的情况下调试没有后门 bootpd。但是,至少,你可以试试 -d plist中的选项。
daniel Azuelos 12 sep 2012 18:47

com.apple.nat 不是什么配置 bootpd/etc/bootpd.plist 是。
dcow 4 nov 2016 22:52
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.