インターフェイスに2番目のIPを追加する - Linux(Android)

インターフェイスに2番目のIPを追加する - Linux(Android)

以下のようにローカルネットワークが設定されています。 地域ネットワーク

ブリッジの固定IPは10.245.245.253/30に設定されます。私のAndroidデバイスのIPはDHCP経由で172.17.2.200に設定されています。インターフェイスIP設定を10.245.245.254/30に変更すると機能します。

しかし、DHCP IP設定をしたいのですがセカンダリIPアドレスまたはインターフェイスへのパスだからできます。ネットワークに接続するそして私の足を訪問同時に。

このコマンドを試しましたが、まだ機能しません。

ip addr add 10.245.245.254/30 dev wlan0

これが私の設定です。

130|shell@msm8916_64:/ # busybox ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop
    link/ether 76:0d:fc:b7:9d:4f brd ff:ff:ff:ff:ff:ff
3: sit0: <NOARP> mtu 1480 qdisc noop
    link/sit 0.0.0.0 brd 0.0.0.0
4: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq qlen 1000
    link/ether 00:0a:f5:80:c2:50 brd ff:ff:ff:ff:ff:ff
    inet 172.17.2.245/24 brd 172.17.2.255 scope global wlan0
       valid_lft forever preferred_lft forever
    inet 10.245.245.254/30 scope global wlan0
       valid_lft forever preferred_lft forever
    inet6 fe80::20a:f5ff:fe80:c250/64 scope link
       valid_lft forever preferred_lft forever
5: p2p0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq qlen 1000
    link/ether 02:0a:f5:80:c2:50 brd ff:ff:ff:ff:ff:ff

shell@msm8916_64:/ # busybox ip route show
10.245.245.252/30 dev wlan0  src 10.245.245.254
172.17.2.0/24 dev wlan0  src 172.17.2.245  metric 304

shell@msm8916_64:/ # busybox traceroute 10.245.245.253
traceroute to 10.245.245.253 (10.245.245.253), 30 hops max, 38 byte packets
 1  172.17.2.1 (172.17.2.1)  12.263 ms  2.305 ms  2.102 ms

私のIPをpingできます。

130|shell@msm8916_64:/ # ping 10.245.245.254
PING 10.245.245.254 (10.245.245.254) 56(84) bytes of data.
64 bytes from 10.245.245.254: icmp_seq=1 ttl=64 time=0.775 ms
64 bytes from 10.245.245.254: icmp_seq=2 ttl=64 time=0.201 ms

どんなアイデアがありますか?

編集1:大きな写真を明確にするため。ワイヤレスブリッジは私が開発しているデバイスです。イーサネットケーブルを接続すると、デバイスはネットワークへのワイヤレスアクセスを提供します。私はそのネットワークについて何も知りません。これが、私が接続されたネットワークでDHCPサーバーが機能しているかどうかわからないため、ワイヤレスブリッジでDHCPクライアントを無効にした理由です。

ファームウェアアップデートのため、ワイヤレスブリッジのIPアドレスを設定したいと思います。だから私は外部と衝突する可能性が低いIPアドレスを選択します。

私のAndroidデバイスで職場のインターネット接続そして私の足を訪問存在する同時に。だから固定パスを追加したいと思います。

私の設定の詳細

shell@msm8916_64:/ $ busybox ip route get 10.245.245.253
10.245.245.253 via 172.17.2.1 dev wlan0  src 172.17.2.245

もっと

1|shell@msm8916_64:/ $ busybox ip rule
0:      from all lookup local
10000:  from all fwmark 0xc0000 lookup 99
13000:  from all fwmark 0x10063 lookup 97
13000:  from all fwmark 0x10069 lookup 236
14000:  from all lookup 236
15000:  from all lookup 99
16000:  from all lookup 98
17000:  from all lookup 97
19000:  from all fwmark 0x69 lookup 236
22000:  from all lookup 236
23000:  from all lookup main
32000:  from all unreachable

もっとあります:

shell@msm8916_64:/ # ip route list table main
10.245.245.252/30 dev wlan0  proto kernel  scope link  src 10.245.245.254
172.17.2.0/24 dev wlan0  proto kernel  scope link  src 172.17.2.245  metric 304

shell@msm8916_64:/ # ip route list table local
broadcast 10.245.245.252 dev wlan0  proto kernel  scope link  src 10.245.245.254
local 10.245.245.254 dev wlan0  proto kernel  scope host  src 10.245.245.254
broadcast 10.245.245.255 dev wlan0  proto kernel  scope link  src 10.245.245.254
broadcast 127.0.0.0 dev lo  proto kernel  scope link  src 127.0.0.1
local 127.0.0.0/8 dev lo  proto kernel  scope host  src 127.0.0.1
local 127.0.0.1 dev lo  proto kernel  scope host  src 127.0.0.1
broadcast 127.255.255.255 dev lo  proto kernel  scope link  src 127.0.0.1
broadcast 172.17.2.0 dev wlan0  proto kernel  scope link  src 172.17.2.245
local 172.17.2.245 dev wlan0  proto kernel  scope host  src 172.17.2.245
broadcast 172.17.2.255 dev wlan0  proto kernel  scope link  src 172.17.2.245

1|shell@msm8916_64:/ # iptables -t main -n -L
iptables v1.4.20: can't initialize iptables table `main': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

ベストアンサー1

これには、4つの追加のルーティングテーブルと追加のルーティングルールで示されているファイアウォール設定を含む、かなり複雑なルーティング設定があります。これはほぼ間違いなく問題です。したがって、extaテーブル(など)を見て、ip route list table 99ファイアウォールルール(iptables -t table_name -n -Lすべての場合table_name)を見て、何が起こっているのかを理解してください。

編集する

ルーティングテーブルiptablesはファイアウォールテーブル()とまったく異なるため、ファイアウォールテーブルではなくルーティングテーブルなのでiptables -t main -n -L意味がありません。main

などip route list table 97の出力を使用して質問を編集します。またを含む等。ルールに記載されている他のテーブルへの出力もあります。出力が長すぎる場合は、すべてを貼り付けボックスに入れてリンクしてください。ip route list table 9899236iptables -t filter -n -Liptables -t nat -n -Lmangleraw

iptables読みたい場合は、オンラインでポリシールーティングに関する多くのチュートリアルを見つけることができます。しかし、2番目のアドレスがソースアドレスになるのを妨げる要因が何であるかを理解しても、より困難な作業は見つけることです。なぜこれらすべてのルールがあり、これを作成した人は何を達成したかったのですか?

したがって、「ある種のファイアウォールルールがこれをブロックするため」という答えに満足していれば、そのままにしておくこともできます。 :-)

おすすめ記事