如何在MacBook的以太网端口上成功运行DHCP服务器?
我的目标是在我的MacBook以太网端口上安装一个以太网交换机,我将通过DHCP连接几个Raspberry Pi连接,每个都将运行VNC服务器进行远程访问,我希望我的互联网可以从我的MacBook的WiFi连接。
为了做到这一点,我使用了OSX的内置DHCP服务器,如下所示:
在/ etc /中编辑了bootpd.plist,这将配置192.168.2.0网络的DHCP服务器
<?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>Subnets</key>
<array>
<dict>
<key>_creator</key>
<string>com.apple.InternetSharing</string>
<key>allocate</key>
<true/>
<key>dhcp_domain_name_server</key>
<array>
<string>192.168.2.1</string>
</array>
<key>dhcp_router</key>
<string>192.168.2.1</string>
<key>lease_max</key>
<integer>36000</integer>
<key>lease_min</key>
<integer>36000</integer>
<key>name</key>
<string>192.168.2/24</string>
<key>net_address</key>
<string>192.168.2.0</string>
<key>net_mask</key>
<string>255.255.255.0</string>
<key>net_range</key>
<array>
<string>192.168.2.2</string>
<string>192.168.2.254</string>
</array>
</dict>
</array>
<key>bootp_enabled</key>
<false/>
<key>detect_other_dhcp_server</key>
<true/>
<key>dhcp_enabled</key>
<array>
<string>bridge0</string>
</array>
<key>use_server_config_for_dhcp_options</key>
<false/>
</dict>
</plist>
在/ etc /中编辑/创建bootptab,这会将静态IP分配给Raspberry Pi
%%
#hostname hwtype hwaddr ipaddr bootfile
Raspi1 1 aa:bb:cc:dd:ee:f1 192.168.2.2
Raspi2 1 aa:bb:cc:dd:ee:f2 192.168.2.3
Raspi3 1 aa:bb:cc:dd:ee:f3 192.168.2.4
Raspi4 1 aa:bb:cc:dd:ee:f4 192.168.2.5
- 使用以下命令运行/停止DHCP服务器,在〜/ .bash_profile中创建别名:
别名dhcp-start ='sudo / bin / launchctl load -w /System/Library/LaunchDaemons/bootps.plist'
别名dhcp-stop ='sudo / bin / launchctl unload -w /System/Library/LaunchDaemons/bootps.plist'
太棒了我能够远程连接到每个Pi,但是我有以下问题:
由于我在OSX的共享菜单中共享了从WiFi到以太网端口的互联网连接,因此无法从每个Pi连接到互联网:
重置MacBook后,将删除bootpd.plist文件
任何帮助解决上述两个问题的人都表示赞赏!
如何在MacBook的以太网端口上成功运行DHCP服务器?的更多相关文章
- 纪念一下,时隔多年,继delphi上成功运行sql之后
纪念一下,时隔多年,继delphi上成功运行sql之后,在linux上用eclipse成功运行Wordcount程序,不容易呀,折腾了十几天 但我知道,这仅仅是我学习大数据的一个开始,仅此纪念一下,不 ...
- java类在eclipse上打jar包,Linux上成功运行的实例
1 eclipse下的java项目结构如下图所示: 2 打包的步骤如下: 3 修改minifest.mf文件: 4 .上传需要的三方jar包们和主类打的jar(案例是topV.jar)并且执行jav ...
- 如何在MacBook M1上无缝切换Win11和MacOS?
2020年,MacBook M1发布后,由于其夸张到离谱的性能表现,苹果又一次在知名度和销量上真正实现了双丰收. 抛开M1和MacOS其他的华丽特色不谈,很多习惯了Windows系统的同学,在换了这台 ...
- 如何在Web服务器80端口上开启SSH服务
本文所讨论的网络端口复用并非指网络编程中采用SO_REUSEADDR选项的 Socket Bind 复用.它更像是一个带特定路由功能的端口转发工具,在应用层实现. 背景 笔者所处网络中防火墙只开放了一 ...
- 教你如何在Drcom下使用路由器上校园网(以广东工业大学、极路由1S HC5661A为例)
免责声明: 在根据本教程进行实际操作时,如因您操作失误导致出现的一切意外,包括但不限于路由器变砖.故障.数据丢失等情况,概不负责: 该技术仅供学习交流,请勿将此技术应用于任何商业行为,所产生的法律责任 ...
- 如何在Ubuntu 16.04上安装Apache Web服务器
转载自:https://www.howtoing.com/how-to-install-the-apache-web-server-on-ubuntu-16-04 介绍 Apache HTTP服务器是 ...
- 如何在Ubuntu 18.04上安装Apache Web服务器
一. apt库安装 1.在终端输入更新检查命令,sudo apt-get update 2. 在更新完成后(如果不想检查更新,也可直接输入此步)输入:sudo apt-get install apac ...
- springboot打成的jar包如何在Linux上持久运行
一.首先说说在没有springboot的时候,项目是如何部署的? 1.动态web项目 动态web项目部署很方便,基本上上传文件到服务器的tomcat里面的webapps文件夹下即可完成部署.当然了,这 ...
- Maven依赖中的scope详解,在eclipse里面用maven install可以编程成功,到服务器上用命令执行报VM crash错误
Maven依赖中的scope详解 项目中用了<scope>test</scope>在eclipse里面用maven install可以编译成功,到服务器上用命令执行报VM cr ...
随机推荐
- android aysncTask面试解析
- JSON的理解
官方解释: JSON的全称是”JavaScript Object Notation”,单单从字面上的理解就是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式. 理解: ...
- Django开发笔记三
Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.基于类的方式重写登录:views.py: from ...
- MoveIt! 源安装
rosdep update sudo apt-get update sudo apt-get dist-upgrade sudo apt-get install python-wstool pytho ...
- ARMV8 datasheet学习笔记4:AArch64系统级体系结构之Self-hosted debug
1. 前言 2. 关于self-hosted debug Debugger调试器 是操作系统或系统软件的一部分,它会处理debug exception或修改debug system register, ...
- HTML学习笔记03-HTML基础
<!DOCTYPE HTML> <html> <head> <title> </title> </head> <body& ...
- 【转】snprintf()函数使用方法
众所周知,sprintf不能检查目标字符串的长度,可能造成众多安全问题,所以都会推荐使用snprintf. 注:sprintf()函数:int sprintf( char *buffer, const ...
- yum install oracle-validated
背景 当时心血来潮要在linux搞oracle,可一顿折腾,大约两个周时间,主要是各种环境的检测麻烦,在redhat上操作也不如centos有利. 命令 yum install oracle-vali ...
- oracle 分区 查询
显示数据库所有分区表的信息:DBA_PART_TABLES 显示当前用户可访问的所有分区表信息:ALL_PART_TABLES 显示当前用户所有分区表的信息:USER_PART_TABLES 显示表分 ...
- 006_netstat中state详解
TCP三次握手的过程如下: 主动连接端发送一个SYN包给被动连接端: 被动连接端收到SYN包后,发送一个带ACK和SYN标志的包给主动连接端: 主动连接端发送一个带ACK标志的包给被动连接端,握手动作 ...