因为有需要做Android相关的开发工作,很多时候要穿越之后才能做事情;

如Android文件加密预研、Android NDK/SDK的下载,都需要使用得到Google;

但是穿越之后,访问国内网站就不是那么方便了,所以,写一脚本,在需要的时候直接调用下就可以直达国内网站了;

 #!/bin/bash -
#===============================================================================
#
# FILE: direct_conn.sh
#
# USAGE: ./direct_conn.sh
#
# DESCRIPTION:
#
# OPTIONS: ---
# REQUIREMENTS: ---
# BUGS: ---
# NOTES: ---
# AUTHOR: linkscue (scue), linkscue@gmail.com
# ORGANIZATION:
# CREATED: 2014年09月07日 17时11分00秒 CST
# REVISION: ---
#=============================================================================== test -n $ || exit # get param
sudo echo -n # get route act=add # 默认是添加邮件操作
gw=192.168.1.1 # 默认网关,未穿越城墙之前 # function
get_addr(){
curl -sL http://www.ip138.com/ips1388.asp\?ip\=$1\&action\=1 |\
grep -i $ |grep -o '[0-9.]\+<'|awk -F'<' '{print $1}'
} case $ in
d|del|delete)
act=del
shift
;;
a|add)
act=add
shift
;;
esac # do
for i in $@; do
ip=$i
echo $i | grep -q '[a-zA-Z]\+' &&\
ip=$(get_addr $(echo ${i##http://}|grep -o '[a-zA-Z0-9.-]\+'))
echo "route: $act $ip"
case $act in
add )
route -n|grep -q $ip ||\
sudo route $act -net $ip netmask 255.255.255.255 gw $gw metric
;;
del )
route -n|grep -q $i &&\
sudo route $act -net $ip netmask 255.255.255.255 gw $gw metric
;;
esac
done

使用方法:

  可批量操作

  1) 添加路由: ./direct_conn.sh add 203.130.61.21  pan.baidu.com  http://www.baidu.com/  ..

  2) 删除路由: ./direct_conn.sh del 203.130.61.21  pan.baidu.com  http://www.baidu.com/  ..

〖Linux〗穿越城墙之后,直接连接国内网站的路由配置的更多相关文章

  1. 使用国外 DNS 造成国内网站访问慢的解决方法

    本文原载于 wzyboy's blog,转载请注明本文地址: https://wzyboy.im/post/874.html ,谢谢合作. 为什么要用国外 DNS 由于众所周知的问题,国内 DNS 服 ...

  2. 【转载】国内网站博客数据统计选免费Google Analytics还是百度统计

    [转载]国内网站博客数据统计选免费Google Analytics还是百度统计 Google Analytics谷歌统计是我用的第一个网站统计工具,当然现在也一直在用.Google Analytics ...

  3. 7个基于Linux命令行的文件下载和网站浏览工具

    7个基于Linux命令行的文件下载和网站浏览工具 时间:2015-06-01 09:36来源:linux.cn 编辑:linux.cn 点击: 2282 次 Linux命令行是GNU/Linux中最神 ...

  4. LINUX下一款不错的网站压力测试工具webbench

    LINUX下一款不错的网站压力测试工具webbench 分类: Linux 2014-07-03 09:10 220人阅读 评论(0) 收藏 举报 [html] view plaincopy wget ...

  5. Linux下Apache服务部署静态网站------网站服务程序

    文章链接(我的CSDN博客): Linux下Apache服务部署静态网站------网站服务程序

  6. Linux系统下安装Redis和Redis集群配置

    Linux系统下安装Redis和Redis集群配置 一. 下载.安装.配置环境: 1.1.>官网下载地址: https://redis.io/download (本人下载的是3.2.8版本:re ...

  7. 国内可用maven repository 配置

    国内可用maven repository 配置 发表于2016/1/4 23:08:04  10235人阅读 分类: maven 鉴于一些原因,从maven中央仓库download依赖包时,被各种折磨 ...

  8. Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径

    Java/javaEE/web/jsp/网站编程环境配置及其软件下载和网站路径 (2015/07/08更新) JDK下载地址(JDK官网下载地址) 下载地址为:http://www.oracle.co ...

  9. Linux和Windows路由配置

    Linux和Windows路由配置 一.配置路由 1-       原则上一台主机只能有一条缺省路由.如果一台主机上有多个网段的话,请配置能够上网的那个网段的网关为缺省路由 Linux配置缺省路由: ...

随机推荐

  1. 监听home键+模拟home键

    一.监听home键首先定义一个广播接受者 HomeKeyReceiver package com.kale.floattest; import com.kale.floattest.service.D ...

  2. .Net Core HTML解析利器之HtmlAgilityPack

    一 .HtmlAgilityPack简介 这是一个敏捷的HTML解析器,它构建了一个读/写DOM,并支持简单的XPATH或XSLT(实际上,你实际上并不了解XPATH和XSLT来使用它,不必担心).它 ...

  3. Chapter 6 -- Caches

    CachesExplained Explanation for how to use Guava caches. explained Updated Jun 4, 2013 by lowas...@g ...

  4. GROUP BY中ROLLUP/CUBE/GROUPING/GROUPING SETS使用示例

    oracle group by中rollup和cube的区别: Oracle的GROUP BY语句除了最基本的语法外,还支持ROLLUP和CUBE语句.CUBE ROLLUP 是用于统计数据的. 实验 ...

  5. 推荐朋友 - LintCode

    拼多多笔试第三题 除了题目具体方法值得注意外,数据的输入格外注意 题目 描述 给n个人的朋友名单,告诉你user,请找出user最可能认识的人.(他和user有最多的共同好友且他不是user的朋友) ...

  6. 字符串 CSV解析 表格 逗号分隔值 通讯录 电话簿 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  7. Create an Android library

    官方文档 创建 Android 库 [Create an Android library] Android 库在结构上与 Android app module 相同.它可以提供构建应用所需的一切内容, ...

  8. Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十六)Structured Streaming中ForeachSink的用法

    Structured Streaming默认支持的sink类型有File sink,Foreach sink,Console sink,Memory sink. ForeachWriter实现: 以写 ...

  9. Java-JUC(四):同步容器介绍

    同步容器简介 针对容器我们知道有HashMap,HashTable,其中HashMap是一个非线程安全的,HashMap在并发执行put操作时会引起死循环,导致CPU利用率接近100%.因为多线程会导 ...

  10. mysql 批量数据循环插入

    双重循环插入 DELIMITER ;; CREATE PROCEDURE test_insert() BEGIN DECLARE a INT DEFAULT 1; DECLARE b TINYINT ...