DHCP없이 인터넷 공유


11

10.6을 실행하는 iMac을 무선 브리지로 설정하려고합니다. 작동하지만 DHCP를 비활성화하고 네트워크의 DHCP 서버가 연결된 장치의 IP를 제공하도록해야합니다. 인터넷 연결 공유에서 DHCP를 비활성화하는 방법을 찾지 못하는 것 같습니다. 이것이 가능한지 아는 사람이 있습니까? 에 설정할 수있는 키가 있다고 생각 /Library/Preferences/SystemConfiguration/com.apple.nat.plist하지만 찾을 수 없습니다. InternetSharing에 대한 매뉴얼 페이지를 확인했으며 DHCP 서버가 사용하는 서브넷을 변경하는 것 외에는 유용한 정보가 없습니다.


AFAIK, OS X 인터넷 공유는 NAT 만 수행하며 진정한 브리징은 아닙니다. 따라서 연결을 위해 iMac을 사용하는 장비는 자체 개인 네트워크에 있으며 iMac은 라우터 역할을합니다. 이로 인해 연결된 장비는 iMac에서 IP를 가져와야합니다. 기존 DHCP 서버에 접속할 수 없습니다. 나는 인터넷 공유의 장에 대해 충분히 잘 알고 있지는 않지만, 그것이 가장 좋은 준 정보 추측입니다.
robmathers

답변:


2

로부터 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구성 파일을 변경 한 후.


1

InternetSharing은 다음 두 가지 작업을 수행합니다.

  • 보조 네트워크 인터페이스 ( bootpd) 에 연결된 장치에 IP 주소를 동적으로 제공
  • 동적으로 귀속되는 이러한 주소에 대한 IP 주소 변환 (NAT) 관리 ( natdSnow Leopard 및 natpmpdLion)

InternetSharing을 사용하면 MacOS X을 IP 브리지로 구성 할 수 없습니다. man InternetSharing(Snow Leopard에서는 사용 가능하지만 Lion에서는 사용 불가능)을 참조하십시오 .

이것은 대담한 투명 브리지와 관련된 위험 때문에 다음과 같은 나쁜 생각입니다. 내부적 InternetSharing으로 다음을 수행합니다.

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

모든 IP 트래픽이 통과 할 수 있습니다. 이 문제를 완화하기 위해 보조 인터페이스에서 평가 bootpd되고 IP를 통해 변환 natd되거나 natpmpd올바르게 변환되는 IP 주소 만 외부로 변환됩니다.


답변 주셔서 감사합니다, 다니엘 두 가지 질문 : (1) InternetSharing으로 DHCP를 비활성화 할 수 없다는 신뢰 수준은 어느 정도입니까 (그리고 증거 / 자원을 제공 할 수 있습니까)? (2) 왜 이것이 나쁜 생각이라고 생각하는지 자세히 설명해 주시겠습니까? 당신이 말하는 위험은 무엇입니까? 다시 한 번, 증거와 참고 자료를 주시면 감사하겠습니다. 감사합니다
Matthew Boynes

귀하의 질문으로 설명을 개선하려고 노력했습니다.
dan

설명서 페이지에 "com.apple.nat.plist에 대한 자세한 내용은 여기에 완전히 설명되어 있지 않습니다"라는 내용이 포함되어 있으므로 DHCP를 비활성화하는 설정이있을 수 있습니다. 불행히도, 우리는 이것이 가능한지 여부에 대한 확실한 증거없이 여전히 남아 있습니다. 세부 사항을 모두 추가해 주셔서 감사합니다
Matthew Boynes

사실 나는 맨 페이지 내에서 면책 조항을 읽는 것보다 더 나아갔습니다.). 나는 포크하지 않고 디버깅 할 백도어가 없다고 확신한다 bootpd. 그러나 적어도 -dplist 내에서 옵션을 사용해보십시오 .
dan

com.apple.nat구성하는 것이 아닙니다 bootpd. /etc/bootpd.plist입니다.
dcow
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.