OS X命令行IPv4接口重置

如果瞻博networking的networking连接VPN客户端不能正常断开连接,则会使OS Xnetworking接口处于不可用状态。

编辑:“正常断开连接”是指除了点击软件客户端上的“退出”button以外的任何时候VPN丢弃。 发生这种情况时,WiFi的时间足够长,导致VPN掉落,或者我可以closures笔记本电脑屏幕,而不记得断开,等等。

从terminal,一个简单的ping得到以下结果:

ping: sendto: Cannot allocate memory 

重新启动解决了这个问题,但这是不方便的。

使用ifconfig重置接口不起作用:

 ifconfig en0 down ifconfig en0 up 

也不刷新路由表:

 route -n flush 

我也尝试重置DNScaching(完全不相关,但我想我会尝试无论如何)。 这显然不起作用。

 launchctl unload /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist launchctl load /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist 

最后可靠的工作是closuresIPv4,然后使用以下步骤重新启用它:

  1. 打开系统首选项
  2. 点击networking图标
  3. 点击破损的界面。
  4. 点击高级button。
  5. selectTCP / IP
  6. 在configurationIPv4下select“关”。
  7. select“确定”
  8. select“应用”。
  9. 再次执行步骤4 – 8,但用您所需的IPconfiguration方法replace6。

所以对我的问题…有没有办法实现上述步骤1-9从命令行相同? 理想情况下,我希望能够调用一个bash脚本来重置。

注意:这是在OS X Mountain Lion和OS X Yosemite上testing的。 我跳过了OS X Mavericks,因此我省略了特定的标记。 我对小牛队也有所有的理由,但我无法certificate这一点。

这些命令为我工作。

closuresIPv4:

 sudo networksetup -setv4off Wi-Fi 

将其设置回DHCP:

 sudo networksetup -setdhcp Wi-Fi 

每次我以任何忘恩负义的方式closuresnetworking连接VPN,我都会看到这个问题。 我使用了上面提供的答案,并在我的/etc/profile一个别名

 alias netbounce='sudo networksetup -setv4off Wi-Fi;sudo networksetup -setdhcp Wi-Fi' 

现在当这种情况发生时,我在terminal上键入netbounce ,并且与世界一切正常。

查看路由表并删除到本地/ VPNnetworking的所有路由,然后尝试重新连接到您的VPN。

 sudo route delete 192.168.1.0 

或者 :)

也许你正在寻找networksetup ? 具体来说,这个简短列表中的开/关与其他选项可能直接有用。 (运行没有参数的命令来查看整个巨大的选项列表。)

  Usage: networksetup -listnetworkserviceorder Display services with corresponding port and device in order they are tried for connecting to a network. An asterisk (*) denotes that a service is disabled. Usage: networksetup -listallnetworkservices Display list of services. An asterisk (*) denotes that a network service is disabled. Usage: networksetup -getnetworkserviceenabled <networkservice> Display whether a service is on or off (enabled or disabled). Usage: networksetup -setnetworkserviceenabled <networkservice> <on off> Set <networkservice> to either <on> or <off> (enabled or disabled).