【討論】Tomato Firmware 中文化for Buffalo&Linksys



贊助商連結


頁 : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33

puwen
2008-03-26, 07:29 PM
請給我 65535 的版本 試試 謝謝!

fixInt(nvram.ct_max || 2048, 128, 10240, 2048) }

改裡面的 前 2048 或 後 2048 會改變 ip_conntrack_max 的值 ?

一起包在
http://twtomato.googlecode.com/files/Tomato_V117_R125.7z
裡了

在 Tomato.js 裡,
function fixInt(n, min, max, def)
{
if (n === null) return def;
n *= 1;
if (isNaN(n)) return def;
if (n < min) return min;
if (n > max) return max;
return n;
}

看起來是 max 在決定 "網頁設定" 時的最大值
實際系統裡的 ip_conntrack_max 是由誰控制的,
我也不知是哪一部份
所以要試看看

贊助商連結


bv2lk
2008-03-26, 09:44 PM
一起包在
........
看起來是 max 在決定 "網頁設定" 時的最大值
實際系統裡的 ip_conntrack_max 是由誰控制的,
我也不知是哪一部份
所以要試看看

我自己弄錯了.......

當連線數 改變時 TOMATO 會自動 修改 ip_conntrack_max 的值 .
我機器刷了好幾個版 都沒 clean NVRAM 舊版的數值 沒清除..... ...:D


能刷 TOMATO 的機器 最少 RAM 都有 16M
我想把預定值 改成 4096 ,不然 BT 如何跑呢?

4096, 128, 65535, 4096

puwen
2008-03-26, 10:06 PM
筆記:
/tomato/release/src/router/httpd/tomato.c
{ "ct_max", V_RANGE(128, 10240) },
修改成 V_RANGE(128, 61440)
因為這裡也會檢查直接設定成 61440

再加上一個
/tomato/release/src/router/httpd/ctnf.c
#if 1
const char *p;

if ((p = nvram_get("ct_max")) != NULL) {
n = atoi(p);
if (n == 0) n = 2048;
else if (n < 1024) n = 1024;
else if (n > 10240) n = 10240;
}
else {
n = 2048;
}
#else
char s[64];

if (f_read_string("/proc/sys/net/ipv4/ip_conntrack_max", s, sizeof(s)) > 0) n = atoi(s);
else n = 1024;
if (n < 1024) n = 1024;
else if (n > 10240) n = 10240;
#endif
這裡也要修改



/tomato/release/src/router/www/advanced-ctnf.ash
則有
return v_range('_ct_max', quiet, 128, 10240);

value: fixInt(nvram.ct_max || 2048, 128, 10240, 2048) }
這二個地方要改

puwen
2008-03-26, 10:27 PM
我自己弄錯了.......

當連線數 改變時 TOMATO 會自動 修改 ip_conntrack_max 的值 .
我機器刷了好幾個版 都沒 clean NVRAM 舊版的數值 沒清除..... ...:D


能刷 TOMATO 的機器 最少 RAM 都有 16M
我想把預定值 改成 4096 ,不然 BT 如何跑呢?

4096, 128, 65535, 4096

目前有三個版本
Max, Default
10240, 2048
35840, 7168
61440, 12288

Min 都是 128
Default = Max * 0.2

bx2aa
2008-03-26, 10:47 PM
/tomato/release/src/router/nvram/defaults.c
裏面的 // advanced-ctnf 的 "ct_max","20480" 應該就是初始化的值.

不然試著修改
// LAN TCP/IP parameters 的 "lan_ipaddr", "192.168.1.1"
為 192.168.0.1 看看刷完後,
是不是 PC 要設為 192.168.0.???/24 連機器
LAN http://192.168.0.1
WAN http://192.168.0.1:8080

bv2lk
2008-03-26, 11:20 PM
Tomato 太厲害了 環環相扣 一髮動全身 ........

puwen
2008-03-27, 12:12 AM
Tomato 太厲害了 環環相扣 一髮動全身 ........

....
我咧
目前的版本
1. WebUI 可以輸入 61440
2. 進 router 下command, # nvram show|grep -i ct_max
也是61440

卡在去看 ip_conntrack_mak
# cat /proc/sys/net/ipv4/ip_conntrack_max
還是只會 show 到 10240

不知還有哪邊要修改?

bv2lk
2008-03-27, 12:59 AM
輸入 128-10240 之間的連線數 ip_conntrack_max 會連動更改.

一超過 10240 只會保持最後一次的數值 (前一次連線數若是128 ip_conntrack_max 也是128)

不知道那限制住了???

bv2lk
2008-03-27, 01:09 AM
/tomato/release/src/router/nvram/defaults.c
裏面的 // advanced-ctnf 的 "ct_max","20480" 應該就是初始化的值.

不然試著修改
// LAN TCP/IP parameters 的 "lan_ipaddr", "192.168.1.1"
為 192.168.0.1 看看刷完後,
是不是 PC 要設為 192.168.0.???/24 連機器
LAN http://192.168.0.1
WAN http://192.168.0.1:8080

ip_conntrack_max 值 由 WEB 設定時 128-10240 都會同步修改.
超過 10240 便不動作了.

變成 要手動 修改 ip_conntrack_max. 爽度不夠.:)

我找到了 爽!!

p = nvram_safe_get("ct_max");
i = atoi(p);
if ((i >= 128) && (i <= 10240)) {
f_write_string("/proc/sys/net/ipv4/ip_conntrack_max", p, 0, 0);
}

TOMATO MOD 1.17 正體中文化 韌體 (65535 連線數)2008-03-27 發佈

qiaoliming
2008-03-27, 03:52 PM
也就是說,老大,我下載了你的65535的版本刷新后是需要手工將其設置為65535還是10240就可以了?