嗯, 准确的说, 如果 iptables -t nat 吃掉了 lo 的包 (MASQUERADE 之类的), Google TalkPlugin 就会傲娇掉, 具体表现为无论刷新重装多少次, 都提示没有连接, 网上介绍的各种方法都无效.
[006:450] Started GoogleTalkPlugin, path=/opt/google/talkplugin/GoogleTalkPlugin
[006:450] Waiting for GoogleTalkPlugin to start...
[007:451] Read port file, port=52545
[007:453] Initiated connection to GoogleTalkPlugin
[007:551] Socket connection established
[007:551] ScheduleOnlineCheck: Online check in 5000ms
[007:552] Warning(clientchannel.cc:669): Connection lost while waiting for authorization reason=0
[012:567] HandleOnlineCheck: Starting check
[012:567] Warning(clientchannel.cc:778): Not connected; restart already tried, giving up
简单举例, 引起问题的会吃掉 lo 的包的规则如:
-A POSTROUTING -j MASQUERADE
如果想尽量保持原语句正常功能, 而仅仅排除掉 lo 的包, 可以用:
-A POSTROUTING ! -o lo -j MASQUERADE
-A POSTROUTING -o ‘!lo’ -j MASQUERADE
注意: 网上各种教程都玩坏了, ! 和 lo 之间不能有空格, 且用单引号以防止被转义.
更新: ‘!lo’ 也是错的!!!
当然如果能指定 -o eth0 什么更准确的当然最好啦 🙂
猫,你什么时候换域名了,今天在网上搜索有搜到一个网址,进来一看发现是你的博客
.net那个不是墙了么…
这个新的没墙而已, 呵呵.
旧地址也能访问的.
看来不是我遇到的问题
嗯..这应该是个罕见情况了…
win7用户只是来围观
另外根据iptables的manpage,准确写法是 ! -o lo
这样啊…我在网上一搜一大把的
-o ! lo
然后各种毁
果然是hangout的骨灰级玩家
乃自重….
都没和我hangout过呢~~ (雾