DHCP olmadan İnternet paylaşımı


12

İMac'imi 10.6 çalıştırarak kablosuz bir köprü kurmaya çalışıyorum. Çalışıyor, ancak DHCP'yi devre dışı bırakmam ve ağımın DHCP sunucusunun bağlı cihazlar için bir IP sağlaması gerekiyor. İnternet Bağlantı Paylaşımı'nda DHCP'yi devre dışı bırakmak için bir yol bulamıyorum. Bunun mümkün olup olmadığını bilen var mı? Sanırım yerleştirilebilecek bir anahtar var. /Library/Preferences/SystemConfiguration/com.apple.nat.plist, ama bulamıyorum. InternetSharing için man sayfasını kontrol ettim ve DHCP sunucusunun kullandığı alt ağı değiştirmek dışında yararlı bir şeyden bahsetmiyor.


AFAIK, OS X İnternet Paylaşımı yalnızca NAT yapar, gerçek köprüleme yapmaz. Dolayısıyla, iMac'inizi bağlantı için kullanan cihazlar kendi özel ağlarındadır ve iMac'iniz bir yönlendirici görevi görür. Bu nedenle, bağlı cihazların iMac'inizden bir IP alması gerekir. Mevcut DHCP sunucunuzla iletişim kuramazlardı. Emin olmak için İnternet Paylaşımı'nın cesaretine yeterince aşina değilim ama bu benim en yarı bilgili tahminim.
robmathers

Yanıtlar:


1

İtibaren bootpd man sayfa:

Dhcp_enabled özelliklerinin her biri için, bootp_enabled,   old_netboot_enabled,        netboot_enabled ve relay_enabled, ilgili servis etkinleştirilebilir veya        tüm arayüzler için devre dışı bırakılmış veya yalnızca belirli bir arayüz kümesi için etkinleştirilmiştir.        Global olarak etkinleştirmek veya devre dışı bırakmak için sırasıyla doğru veya yanlış bir boole değeri kullanın.        Yalnızca belirli bir arabirim kümesini etkinleştirmek için,        tek bir arabirim veya bir dizge dizisi, her arabirim için bir öğe.

 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>

Global olarak dhcp'yi devre dışı bırakmak için şunu kullanın:

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

Göndermeyi unutma SIGHUP (kill -1) için bootpd yapılandırma dosyasında değişiklikler yaptıktan sonra.


2

InternetSharing 2 görev gerçekleştiriyor:

  • Dinamik olarak bağlı cihazlara bir IP adresi sağlama ikincil ağ arayüzü ( bootpd )
  • bunlar için IP adresleri çevirisini (NAT) yönetmek dinamik olarak atfedilen adresler ( natd Kar Leopesinde & amp; natpmpd Aslan üzerinde)

İnternet Paylaşımı, Mac OS X'i IP köprüsü olarak yapılandırmanıza izin vermez. Görmek man InternetSharing (Snow Leopard'da bulunur ancak Lion'da mevcut değildir).

Bu kötü bir fikir olacaktır: en önemlisi, ilgili riskler yüzünden düz, kalın, saydam bir köprü: içten InternetSharing bir gerçekleştiriyor:

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

Bu, herhangi bir IP trafiğinin geçmesine izin verir. Bu sorunu hafifletmek için, yalnızca ikincil arabirimde atfedilen IP adreslerini bootpd ve aracılığıyla çevrildi natd veya natpmpd Hangi dışa doğru çevrilmiş.


Cevabınız için teşekkürler Daniel. İki soru: (1) InternetSharing'in DHCP'yi devre dışı bırakmasına izin vermediği (ve herhangi bir kanıt / kaynak sağlayabilir misiniz) güven düzeyiniz nedir? (2) Bunun neden kötü bir fikir olduğunu düşündüğünüzü açıklayabilir misiniz? Konuştuğunuz riskler nelerdir? Yine, kanıtlar ve referanslar takdir edilecektir. Teşekkürler
Matthew Boynes

Sorularınız sayesinde açıklamalarımı geliştirmeye çalıştım.
daniel Azuelos

Man sayfası özellikle "com.apple.nat.plist ... 'in ayrıntıları burada tam olarak belgelenmemiş" diyor, bu nedenle DHCP'yi devre dışı bırakacak bir ayar olması tamamen mümkün. Ne yazık ki, bunun yapılıp yapılmayacağına dair kesin bir kanıt olmadan hala kalıyoruz. Aynı ayrıntıyı eklediğiniz için teşekkürler
Matthew Boynes

Aslında sadece man sayfasındaki feragatnameyi okumaktan daha ileri gittim;). Ben çatal olmadan hata ayıklamak için hiçbir arka kapı olmadığından eminim bootpd. Ancak, en azından, deneyebilirsiniz -d plist içindeki seçenek.
daniel Azuelos

com.apple.nat yapılandıran şey değil bootpd. /etc/bootpd.plist olduğunu.
dcow
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.