Làm cách nào tôi có thể chọn ngẫu nhiên địa chỉ MAC của mình mỗi khi bật WiFi?


8

Do sự phổ biến ngày càng tăng của các hệ thống theo dõi chuyển động của mọi người bằng địa chỉ Mac của họ, tôi muốn che khuất tôi.

Tôi đã cài đặt galaxy note 2 gốc với busybox được cài đặt. Tôi có thể thay đổi địa chỉ MAC của mình như vậy:

busybox ifconfig wlan0 hw ether 11:22:33:44:55:66

tuy nhiên, nếu tôi tắt và bật lại mạng không dây hoặc tôi khởi động lại điện thoại thì nó sẽ bị quên. Có nơi nào tôi có thể đặt một tập lệnh để nó sẽ được chạy mỗi khi không dây của tôi bật không?


Hãy dùng thử
pry

Câu trả lời:


6

Làm thế nào về công cụ Pry-Fi của Chainfire đã được công bố tại XDA ?
Nó hoạt động rất tốt và nó có sẵn thông qua cửa hàng Google chính thức tại:

Đây là một ảnh chụp màn hình cho thấy công cụ này đang hoạt động

ảnh chụp màn hình công cụ của Chainfire Pry-Fi


Tôi đã thử Pry-Fi. Mặc dù điện thoại của tôi được liệt kê là đã thử nghiệm nhưng nó đã khiến wi-fi trở nên hoàn toàn không sử dụng được. Tôi thậm chí không thể thấy bất kỳ mạng nào để kết nối. Tôi đã phải gỡ cài đặt để có được quyền truy cập vào mạng gia đình của tôi một lần nữa.
mc0e

3

Bạn có thể làm điều đó bằng cách sử dụng ví dụ như Tasker , công cụ tự động hóa hùng mạnh:

  • Điều kiện: Màn hình bắt đầu (nghĩa là Trình khởi động đã được khởi động ; cách khác: Khởi động thiết bị , tức là quá trình khởi động đã kết thúc)
  • Nhiệm vụ: Chạy Shell , với lệnh của bạn là tham số

Nếu bạn thích nó lạ mắt hơn, bạn thậm chí có thể sử dụng Biến ngẫu nhiên để tạo MAC khác nhau mỗi lần ...


Điều này sẽ kích hoạt như là một phần của quá trình lên mạng hoặc ngay sau đó? Nếu có thể tôi không muốn phát sóng MAC của phần cứng.
mc0e

Điều này sẽ kích hoạt nơi bạn định nghĩa nó, như mô tả: Màn hình khởi động là khi Tasker được kích hoạt, mà thường ngay sau khi khởi động (hoặc khi bạn khởi động / khởi động lại Tasker , hoặc kích hoạt dịch vụ Giám sát nó bằng tay). Nếu bạn sử dụng thiết bị khởi động như điều kiện, nó sẽ chỉ nhận được "kích hoạt" sau khi khởi động, nhưng không phải khi bạn khởi động / khởi động lại Tasker màn hình bằng tay. Vì vậy, trong cả hai trường hợp, nó sẽ được áp dụng ngay sau khi khởi động. Tôi không thể nói liệu khởi tạo mạng có thể nhanh hơn không.
Izzy

Việc kích hoạt sẽ phải theo dõi khi wi-fi được bật và thay đổi MAC trước khi bất kỳ gói tin nào được phát. Tôi không tự tin rằng điều đó có thể dựa vào, nhưng có lẽ tôi đã sai.
mc0e

@ mc0e Nếu bạn nghi ngờ về điều đó, hãy thêm một hồ sơ thứ hai với một điều kiện khác (điều gì đó kích hoạt thay đổi mạng) và áp dụng cùng một nhiệm vụ cho nó :)
Izzy

2

Ngoài câu trả lời khác với Tasker ("Bạn có thể làm điều đó bằng cách sử dụng, ví dụ như Tasker, công cụ tự động hóa mạnh mẽ:"), ở đây một chút Nhiệm vụ (xuất khẩu mô tả) với ngẫu nhiên MAC:

TestMacChanger (130)
    A1: Variable Set [ Name:%count To:0 Do Maths:On Append:Off ] 
    <randomstart>
    A2: Variable Randomize [ Name:%random Min:0 Max:15 ] 
    A3: Variable Convert [ Name:%random Function:Decimal to Hex Store Result In:%rhex ] 
    A4: Test Variable [ Type:Length Data:%rhex Store Result In:%len ] 
    A5: Variable Set [ Name:%rhex To:0%rhex Do Maths:Off Append:Off ] If [ %len eq 1 ]
    A6: Variable Convert [ Name:%rhex Function:To Upper Case Store Result In: ] 
    A7: Variable Set [ Name:%mac To:%mac:%rhex Do Maths:Off Append:Off ] If [ %mac Set ]
    A8: Variable Set [ Name:%mac To:%rhex Do Maths:Off Append:Off ] If [ %mac !Set ]
    A9: Variable Add [ Name:%count Value:1 Wrap Around:0 ] 
    <randomend>
    A10: Goto [ Type:Action Label Number:1 Label:randomstart ] If [ %count < 6 ]
    A11: Variable Set [ Name:%mac To:00:11:22:33:44:55 Do Maths:Off Append:Off ] If [ %mac !Set ]
    A12: Flash [ Text:%mac Long:On ] 
    A13: Run Shell [ Command:su
busybox ifconfig wlan0 hw ether %mac Timeout (Seconds):0 Use Root:On Store Output In:%output Store Errors In:%error Store Result In: Continue Task After Error:On ] 
    A14: Flash [ Text:%error Long:Off ] If [ %error Set ]

Điều này đang thực hiện một vòng lặp cho 6 giá trị hex ngẫu nhiên để có được một mac ngẫu nhiên, ví dụ 01: 4F: 89: BA: 3F: 0C Sau đó, nó đang đặt mac ngẫu nhiên này làm mac riêng.

Tôi có thể thấy mac mới với lệnh này:

busybox iplink show wlan0

Sau khi khởi động lại, mac cũ được thiết lập lại.



-2

Tôi cảm thấy như điều này có thể được thực hiện với một tập lệnh bash hoặc chỉnh sửa tệp init để bao gồm lệnh bạn có ở đây.


1
Điều này không hữu ích; OP sẽ đưa gì vào kịch bản? Nó sẽ đi đâu?
Đậu phộng

1
Đây thực sự là một sự lặp lại của những thứ tôi đã đưa ra trong câu hỏi ban đầu. Tôi không gặp vấn đề gì khi viết kịch bản, nhưng tôi không biết cần phải đi đâu để được kích hoạt mỗi khi điện thoại của tôi trực tuyến.
mc0e

Ngoài ra, điều đó sẽ yêu cầu sửa đổi hình ảnh khởi động; init script là một phần của điều đó. Mọi sửa đổi của tệp init trong "hệ thống tệp được gắn" sẽ bị mất sau khi khởi động (xem ví dụ initrd @ Wikipedia để biết chi tiết).
Izzy

Nếu tôi có cách đặt địa chỉ MAC tồn tại trong quá trình lên xuống của NIC, đó là một bước tiến, ngay cả khi tôi phải sửa đổi tập lệnh sau mỗi lần khởi động lại điện thoại. Đặc biệt là nếu điều đó có nghĩa là địa chỉ MAC được đặt trước khi bất kỳ gói tin nào được phát mỗi khi liên kết wifi tăng lên.
mc0e
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.